UnrealEngineで会話システムを作ろうとしたとき中々よい方法が見つからずに苦戦したことはありませんか?UnrealEngineで会話システムを作るにあたって、自分で作る方法、アセットを購入する方法の2つで自分の求めるダイアログシステムを探しました。
結論
- Dialogue Builder
https://www.unrealengine.com/marketplace/ja/product/dialogue-builder
が自分の好みにあって、使いやすそう。求める条件も満たしている。
理想のダイアログアセット像
UnityのGameCreator1Dialogueモジュールのようなシンプルなものを期待
使い慣れているのもあってGameCreator1のDialogueモジュールのような操作感のアセットなり会話システムを作る方法を目標とします。
求めるダイアログの条件
- 顔写真とセリフをシンプルに表示
- 選択肢で行動を選べるようにできる
- ローカライズが簡単な仕組み
- コントローラーで選択肢が選べる
- コントローラーのボタンでダイアログを先に進められる
- GameCreatorのDaialogueモジュールの様なシンプルで使いやすい設計
- ノードエディター方は煩雑になり難解化しやすいのでできれば避けたい。
UnrealEngine標準機能でローカライズする方法
- ツール → ローカライゼーションダッシュボード → カルチャにまずは日本語を入力 → ネイティブにチェックを入れる
- 注意・ネイティブのチェックを変更すると翻訳データが全て吹き飛ぶ
- ローカライズする対象のテキストを収集する(エディタ上で旗マークがあるもの)
- カルチャの設定から各言語の翻訳データを入力する → コンパイルを忘れない
- ゲーム中の言語は 「 Set Current Culture 」ノードで切り替えることができる。
(エディタ上でデバッグプレイして確認するときは スタンドアローンゲーム で起動する) - パッケージ化するときは、設定の プロジェクト → パッケージ化 → パッケージ化するローカライゼーションの項目でチェックボックスをONにしておく
自分で作る方法を探す
1 How to Make a Simple Dialogue System in Unreal Engine 5
この方法では会話テキストを、キャラクター(プレイヤーやNPC)などのブループリントで作成した二次元配列の変数に格納して取り出す方法になります。
この方法だとローカライズできるか謎です。テキストを格納した配列の変数の項目の横にはローカライゼーション可能である旗マークは見受けられません。
また会話の選択肢を選ぶ機能に関してはこの動画内では紹介されていません。
ということでこの方法は不採用です。
他の動画で、「 わんころのUE5勉強会 」さんや、「 九里江めいく 」さんも同じ様な会話システムを作成する方法を紹介していましたが、選択肢が選べない、と実装に手間がかかるのでアセットを購入する運びとなりました。
アセットを物色
1 Dialogue Plugin 65ドル
- タイプライター効果がオプション(自分で動画を見ながら作る必要がある)
- コントローラー入力で操作できるのかが不明
- 会話と同時に選択肢が出るのが個人的に好みではない
- ローカライズが可能か?が不明
2 Dialogue Component 70ドル
- ダイアログコンポーネント内ですべてテキストを入力ができる
- コントローラー入力に対応している
- テキスト入力欄の横にローカライゼーションの旗マークがあるのでおそらくUnrealEngineの標準機能でローカライゼーションできる
- タイプライター効果が標準機能
- 話している人の顔の画像を表示するUIが無い
UIのカスタマイズは結構豊富にできそうだが、話者の顔の画像は自分で用意する必要がありそう。
UIの改造方法↓
14. UI CustomizationDocumentation for the Dialogue Component. Contribute to dylogaming/Dialogue-Component development by creating an account on GitHub.
3 Dialogue Tree 無料
- タイプライター機能はないが会話のログが表示できる
- 話している人の顔の画像が表示できる
- 入力した会話テキストの横に旗マークがありUnrealEngineの標準機能のローカライズで翻訳ができそう。
- UIをカスタマイズするのは結構めんどくさそう
Dialogue Tree Customization TutorialDocumentation for Unraed plugins and projects
4 Dialogue Builder 45ドル
- タイプライター機能がある
- 話している人の顔の画像が表示できる
- 選択肢を選ぶことができる
- 選択肢からブループリントのイベントを呼び出して特定の処理を実行することができる
- デモ映像では理想のダイアログシステムだが実際に作るとなると結構な作業量が必要でありそう
- ゲームパッドの入力をサポートしている
- ローカライズは独自の機能でテキストにIDが割り振られてデータベースを作るような仕組みになっている
- デモのUIが完璧に理想のダイアログなんだが、デモシーンから流用すればすぐに使えるのだろうか?
まとめ
4 Dialogue Builder 45ドル を買ってみて問題なく使えれば採用。何か問題があればまた、別のダイアログシステムを探す旅にまた出ます。
コメント