3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Unity】FungusをLuaで操作する方法

Last updated at Posted at 2020-10-10

Fungusはビジュアルスクリプティングで会話パートを実装できるアセットです。

ビジュアルスクリプティングなのでUnityEditor上で会話を打ち込む必要があります。

簡単な会話パートならUnityEditor上で済むと思いますが、本格的にアドベンチャーゲームを作る、もしくは会話だけUnityを知らない人に作ってもらおうとすると大変です。

会話パートをLuaに記述することで解決しようと思います。

#ステップ0 Luaとは?

C#とは別の昔からゲームに組み込まれてきた汎用スクリプト言語です。

#ステップ1 Fungusをアセットストアからインポートする。

Asset StoreでFungusを検索しダウンロード&インポートします。

1.png

#ステップ2 Flowchart、LuaEnvironment、LuaScriptをシーンに配置する。

メニューの
Tools > Fungus > Create
から

  • Flowchart
  • LuaEnvironment
  • LuaScript

をシーンに配置します。

2.png

#ステップ3 Luaファイルを配置する。

任意のフォルダにLuaファイルを配置します。

Luaファイルの文字コードはUTF-8にしてください。
UTF-8でないと日本語が文字化けしてしまいます。

#ステップ4 Luaファイルを編集する。

Fungusで会話を表示したい場合は

say("会話")

を記述してください。
改行は\r\nで表現できます。

#ステップ5

Lua Scriptの

  • Lua Enviromentに先ほどHierarchyに配置したLuaEnvironmentをドラッグ&ドロップしてください。
  • Lua Fileに任意の場所に保存したLuaファイルをドラッグ&ドロップしてください。
  • Lua Scriptに直接Luaコマンドを打ち込めます。Lua Fileがある場合は、Lua Fileが実行された後に、Lua Scriptのコマンドが実行されます。

4.png

#ステップ6 Luaの実行タイミングをスクリプトで操作する。

初期設定ではシーン開始時にLuaが実行されます。
実行タイミングを変更したい場合は、
LuaScript > Execute Handler > On Event
をStartからNothingにに変更してください。

3.png

LuaScriptを他のスクリプトでGetComponentして、OnExecuteメソッドを実行してください。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?