Unityで会話ウィンドウ的なのを実装してみた
こんにちは🍎
今回はセリフウィンドウを作ってみました。
今回は前2回の機能(一定時間で処理のタイマーとモーショントゥイーン)を使って作ったものなのでおさらい的な感じですね。
ちなみに今回はこのAPI使うとできるよ!みたいなのは無いので機能的に説明するところは少ないのでささっと説明でいきます。
今回使用してるScript一覧です。(※TimerFunc.csとかも使ってるけど省略してます。)
UI_SerifWindow.cs (セリフウィンドウ管理用)
UI/UI_ImageAlpha.cs (UI.Imageの透過処理用)
UI/UI_ImageAnimation.cs (UI.ImageのSprite切替用)
UI/UI_TextAnimation.cs (UI.Textのtext表示処理用)
【大まかにこんな感じの動きします。】
フェードインしてウィンドウが表示する
↓
名前の表示と会話文が一文字ずつ表示されてく
↓
一定時間後にウィンドウがフェードアウト
上記はウィンドウのみの説明ですが、ほとんどの場合は会話ウィンドウが表示される際にはしゃべってるキャラの存在が欠かせないので、今回はノベルゲーム風なキャラの立ち絵も含めて演出させています。
キャラ立ち絵自体は特にセリフウィンドウに組み込まれた機能ではないですので、セリフウィンドウの処理の合間の演出完了通知時に処理させて立ち絵を表示しています。
実際に動かした際にはこんな感じになります。
実際動作するアセットフォルダも置いておきますので、アセットフォルダを空プロジェクトに入れれば確認できます。(Script/Main.csに使用例があります)
2022_02_19_Assets.zip (426.05kB)
ダウンロード