🦁
[UE5] 独自のDialogSystemにあたってのメモ
(学習の傍らにとっているノートです)
Step1: 既存のアセットを使えるか調べる
キーワード「Dialog」などで調べ回って、現存する会話システム関連のアセットをリスト化してみました。
1万円を超えるようなものは最初から除外してしまっていましたが、安いものだとどれも一長一短で、どうにも購入まで踏み切れず。
結局、そこまで複雑なことをする予定はないのと、UE自体の勉強にもなるかなと思って独自実装に踏み切ることに。
Step2: 実装する要件のとりまとめ
NarrativeSystem
シナリオやカットシーンを表現する仕組み自体のこと。
EventScene
何らかの条件によりプレイヤーの自由操作を奪って、カメラが動いたり音楽が鳴ったりダイアログが表示されたりし初めてから終わるまでの1セット。
NarrativeSystemによってコントロールされる。
Conversationを持つことがある。
Conversation
ダイアログが表示されて一連の会話のやりとりが行われてから終わるまでの1セット。
複数のSentenceが置かれる。
特定のDataTableと1:1で紐づくイメージ。
Talker
Conversationに参加するPawn。
Sentence
横幅にあわせて自動改行するためWrapBoxを使う。
複数のCursorCharが置かれる。
Talkerのアニメーション情報、カメラの位置情報、シーケンスなどを持つ。
CursorChar
1文字ずつ抽出してWidget化し、それを表示することで流れていく感じにする際の「現在の文字」を格納
参考にするURL
全体の構成
↑にカメラ操作を組み合わせる参考
Discussion