Unity Timeline で指定した時間だけテキストを表示する

Unity の Timeline アセットでシーンのゲームオブジェクトを指定した時間だけ表示できます。
スクリプトではコルーチンを使ったり、残り時間を手動で計測する必要がありますが、 Timeline を使えば、動画編集のように指定した時間帯にクリップを配置するだけです。

Unity 公式マニュアルの Timeline ウィンドウの画像
Timeline エディターウィンドウ – Unity マニュアル の画像のコピー

今回は、Timeline ウィンドウの表示、 Timeline アセットの作成、シーンのゲームオブジェクト(テキスト)をタイムラインの表示させたい時間帯にクリップとして配置する手順を紹介します。
※ Unity のバージョンは 2021.3.25f1 Personal <DX11> です。
※表示されている 3D モデルは無料アセット「Old Sea Port」を使用しています。
※ゲームのテキストのフォントには「水面字」を使用しています。

Timeline エディターウィンドウの表示

Timeline エディターウィンドウを表示するには Unity のメニュー「Window」→「Sequencing」→「Timeline」を選択します。

Unity Timeline ウィンドウを表示するメニュー

Timeline アセットの作成

ゲームオブジェクト群の時間による制御を編集するために、そのシーンに Timeline のゲームオブジェクトを作成します。

紹介する 2 つの方法のうち、 1 番目の方法では、最初にアセットを作成して、それをシーンに追加します。

Project ウィンドウのアセットフォルダ内で右クリックして、メニュー「Create」→「Timeline」を選択します。

Unity Project ウィンドウのフォルダ内で右クリックして Create > Timeline を選択します.

作成した Timeline アセットを任意でリネームして、Project ウィンドウから Hierarchy ウィンドウにドラッグ&ドロップすると、そのシーンのゲームオブジェクトを時間経過で制御するタイムラインのゲームオブジェクトを作成できます。

Unity 作成した Timeline を Timeline ウィンドウで表示してから、シーンの Text をドラッグ&ドロップします..

2 番目の方法として、Hierarchy ウィンドウで右クリックメニュー Create Empty を選択して、空のゲームオブジェクトを作成して、Timeline エディタ―ウィンドウの Create ボタンを押した後に、.playable ファイルを作成して、そのシーンのタイムラインゲームオブジェクトを作成することもできます。

Unity ゲームオブジェクトを選択して Timeline エディターウィンドウの Create ボタンで playable ファイルを作成するとそのタイムラインを編集できます.

時間経過で表示させるテキストの Timeline への配置

始めに、時間経過で表示させるテキストのゲームオブジェクトをシーンに作成・配置します。

Hierarchy ウィンドウで、右クリックして、メニュー「UI」→「Legacy」→「Text」を選択して、 Text ゲームオブジェクトを Canvas 内に作成します。
※ Canvas がない場合は自動的に作成されます。

Unity Hierarchy ウィンドウでシーンに UI Text を作成します.

Timeline のゲームオブジェクトをシーンに配置したら、それを選択した状態で、 制御したい同じシーンのゲームオブジェクト(例では Text )を Timeline エディタ―ウィンドウにドラッグ&ドロップして追加します。

タイムライン上に配置されたゲームオブジェクトなどの枠をクリップと呼びます。

左を起点とした時間軸の中に Text のクリップを配置したら、その表示時間に合わせて左辺と右辺をドラッグ&ドロップで移動させて、テキストの表示時間を指定します。

Unity 選択中のゲームオブジェクトの Timeline (Playable) に制御するテキストのゲームオブジェクトをD&Dして追加して横幅を調節します.

テスト

シーンを再生すると、タイムラインが再生され、テキストのクリップの範囲に時間が経過すると、テキストが表示されました。
※このタイムラインの Playable Director コンポーネントの設定で Play On Awake にチェックを入れているため、シーン再生と同時にこのタイムラインも再生されました。

まとめ

今回は、 Unity の Timeline アセットを作成して、シーンのゲームオブジェクト(例では Text)をタイムラインにクリップとして配置して、表示する時間の範囲を指定する手順を紹介しました。
C# のプログラムではコルーチンや時間を手動で計測して行わなければならない処理を Timeline を使うことで簡単に設定することができました。

参照サイト Thank You!

記事一覧 → Compota-Soft-Press

コメント

Ads Blocker Image Powered by Code Help Pro

お願い - Ads Blocker Detected

このサイトは広告を掲載して運営しています。

ポップアップを閉じて閲覧できますが、よろしければ

このサイト内の広告を非表示にする拡張機能をオフにしていただけませんか?

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました