進捗報告動画を作るツール作成(利用開始)
開発中のゲーム画面を動画として保存しておいて、それに対してテキスト表示と読み上げを追加した動画を作るツールを作成中です。
前回までで「VOICEVOX で読み上げ用の音声を作る」「指定されたタイミングでテキスト表示と音声の再生を行う」まで動作しました。
今回は、保存済みの mp4 ファイルを画面全体で再生するあたりを実装します。
やったこと
テキストを載せる対象の動画を再生する
動画ファイルの再生は Unity が提供する Video Player を利用します。
このコンポーネントは Load("file://" + fullpath) でランタイムでファイルを読み込めるので楽でした。
Video Player の使い方で参考にしたサイト
https://localring-web.com/develop-20221213/
今回の実装では、立ち絵の表示を Sprite Renderer で行っているので World 空間に Canvas を作って背面に表示されるように調整しました。
↓ 動作例
よいです。
プロジェクトフォルダの概念を導入する
暫定仕様としてプロジェクトフォルダには
- scenario.csv ファイルがあって、それを使う。
- フォルダにある *.mp4 ファイルの1つを使う。
とします。
エクスプローラーの表示には Runtime File Browser アセットを使いました。
このプロジェクトは BitBucket で bottom_studio というプロジェクト名で MIT ライセンスのオープンソースとして公開しているので、なるべく無料のアセットを使います。
そして、Runtime File Browser のサンプルを見て実装して普通に動作しました。
Runtime File Browser の github のページ
https://github.com/yasirkula/UnitySimpleFileBrowser
よいです。
Unity Recorder を使って録画する
あとは録画を Unity Recorder を使って行うようにします。これは UnityEditor の機能なので、これを使うと Unity を起動しないとこのツールを使えないのですが、とりあえずよいことにします。
スクリプトから Unity Recorder を操作する方法は、下記サイトおよびサイト内にリンクがあった Unity Forum に書いてあったコードを参照しました。
https://blog.yucchiy.com/2020/03/controling-unity-recorder-from-script/
よいです。
使ってみる
↓ 生成された動画ファイル
動作はしました。よいです。
ここまで実装して動画が生成できるのは確認したのですが、気付きとして
- VOICEVOX を自動起動してほしい。
- 起動してないときにエラーメッセージを表示する。
- 視認しづらいので表示する文字の背景を暗くしたい。
- リップシンク(口パク)や目パチを実装したい。
とか思いました。またいつか着手します。
まとめと今後の予定
今回までの実装で、とりあえず紹介動画の作成ツールとして利用できるようになりました。大変よいです。
今後は、このツールを使いながらリップシンクの追加などの機能追加をしていく予定です。がんばります。