Godot 会話アドオン「Dialogic」「Dialogue Manager」比較
Godotの会話アドオン「Dialogic」と「Dialogue Manager」についてざっくりと紹介します。
どちらもGodot3とGodot4版があり。会話シーンを楽に作ることができるアドオンです。
ここではGodot4版について書いています。
先にまとめ
- Dialogic は会話シーン内でやりたいことが大体できるぐらい機能いっぱい。
がっつり会話シーンならこれをベースにゲームを作っていける - Dialogue Manager はシンプルで使いやすい!
マップ上のフキダシやUI系のシーンとかで活躍しそう - どっちも使うのもあり
どちらのアドオンも有効化すると上部メニューバーに表示されます。
ファイルシステムにてリソースをダブルクリックするとアドオンもエディタで編集画面が開きます。
Dialogic
ADVやノベルゲームのような、複数キャラクターの立ち絵を表示したりするリッチな会話シーンに向いています。
Dialogic内の変数やGDScript側とのシグナルでの連携などが便利です
演出の追加や、ややこしい機能要求にも応えられるアドオンです。おすすめ!
Godot4で大きく変わっており、内部的なつくりからエディタまで一新されています。
現在もアルファ版で開発中なので作りかけの機能や、大きな変更があります。
タイムラインエディタ
右バーにイベントコマンドがあります。見ての通りいろいろできます。
名前 | 概要 |
---|---|
Text | テキストを表示する RichTextLabelがベースなので、BBCodeが使えるが、それに加えて文字列内で[]で囲む特殊文字でいろいろできる ウェイト・自動文字送り・画像・シグナルemitなどなど |
Character | キャラクターの表情・ポジションの設定を変える |
position | ポジションの細かい位置設定を変える |
Save | セーブ |
Choice | 選択肢表示 |
condition | 選択肢のコマンド |
Jump | Labelにジャンプする |
Label | ジャンプするためのラベル |
Wait | floatでウェイトを指定してその間止める |
End Timeline | 実行中のタイムラインを終了する |
Background | 背景画像を変更する |
Glossary | 用語集の操作ができそう、開発中? |
History | 会話ログの操作ができそう、開発中? |
Music | BGMの再生 |
Sound | SEの再生 |
Change Style | ダイアログのテンプレートシーンを変更する テンプレートシーンはGodotのシーンなので編集可能 |
Voice | ボイスの再生 |
Signal | Godotのシグナルをemitする 入力した内容がargでsignal_eventというシグナルとなる |
Set Variable | DialogicのVariableEditorで定義した専用の変数に値を入れる これはDialogicのAutoLoadシングルトンを介して他のGodotスクリプトから値の取得・設定も可能 |
Call Node | 現在のシーンのNodePathと、関数名を指定して、それを実行する。 引数も設定できる |
text Input | ユーザーが入力できるテキストダイアログを表示する DialogicのVariableに入力値が入る |
アドオンのコードやシーンを参考にして内部を弄れば既存コマンドの動作の上書きやオリジナルのコマンドの追加もできます。
Dialogic機能としてオリジナルのコマンドも追加できるようになるのも検討中だとか?
左のサイドバーの「→ Text Editor」からテキスト編集をすることもできます。
テキストに限ると、VisualEditorより早く作成していけますね。
キャラクターエディタ
キャラクターのportraitを定義できます。
表情やポーズの差分として画像かシーンを指定します。
シーンにしておくとさらにシーン側でアニメーションをつけたりメッシュアニメーションにできたりと表現の幅が広がります。
Styleからキャラによってダイアログを変えたり、TypingSoundsでポポポポ音を設定したりできます。
設定
設定にぶちこまれているエディタ機能が多い!
タブは、一般設定、翻訳、キャラ表示、選択肢、Godot3版からのコンバーター、用語集、履歴、セーブ、テキスト、変数ですね。
「VariablesEditor」でDialogic変数の管理、「GlossaryEditor」で用語集の管理ができます。
これらはGodot3では設定の中になかったので、分かりにくいかもしれません
Dialogue Manager
ゲーム上で実行する、テキストを表示するシーンとスクリプトが少ないのが◎
マップ上でNPCから出るフキダシや、プレイヤーへの説明ポップアップなど、テキストを
Dialogicよりは機能は少ないですが、会話シーンにもじゅうぶん使えます。
addons/dialogue_manager/example_balloon/ にサンプルのコードとシーンがあり、これをカスタマイズすることで目的にあわせたダイアログにできます。
どっちも使う、使い分けする
DialogicからDialogue Managerを出す、ようなこともできます。
キャラが話している時に他のキャラの反応をフキダシで出したり、フキダシを連続で大量にだして群衆の反応を表現する、などができそうですね。
次回の記事では、具体的なコードやシーン例、プロジェクト配布などがしたいですね~……
Discussion