cluster ワールドに動画を置く際の Tips
cluster のワールドに動画を埋め込んで再生する方法です。Android / iOS / PC 対応。
……を書こうと思ったのですが、一昨日公式から記事が出ていました!!
ワールド内に動画を設置する方法 – Cluster Creators Guide
基本は上記の記事を見てください。VideoPlayer のソースを URL にして、外部から動画をとってきているのがポイントですね。
以下はおまけです。
ローディングを出す
再生開始まで少し時間がかかることがあるので、ローディング画像を出します。
新しくマテリアルを作って、下図の設定にして、VideoPlayer に割り当てます。(上記公式の記事では、RenderTexture の作成および同名マテリアルを作っていたところを、これに変えます)
(クリックで拡大)
動画容量を小さくする
一例ですが、ffmpeg で以下をやっています。↓を ffmpeg_shrink.bat という名前で保存して、
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
set INPUT=%1 | |
set OUTPUT=%2 | |
set WIDTH=%3 | |
ffmpeg -i %INPUT% -vf "scale=%WIDTH%:trunc(ih*%WIDTH%/iw/2)*2" -movflags +faststart -c:v libx264 -c:a copy -crf 28 %OUTPUT% |
> ffmpeg_shrink.bat 入力ファイル.mp4 出力ファイル.mp4 640 ←出力時の横幅ピクセル
などとします。やっているのは、-crf 28 で品質を下げているのと、解像度の縮小です。
元々 1280x720 で 42MB くらいの動画を、横 1280 のままでも 10MB、横 640 にすると 4MB くらいまで減らせました。
(ffmpeg なにそれの際は ffmpeg インストールなどで検索してください)
誰かが近くにいるときだけ再生する
負荷的に良いかと思ったんですけど、これは意図しない動作をしたのでやめたやつです。
トリガー内のプレイヤー数をカウントして 0 なら止めるやつですが、変なタイミングで Exit イベント来たりするんですよね……あと VideoPlayer のソースが URL だと、オンオフのたびにダウンロードするようなので微妙です。
遠くにいるときは音が聞こえないようにする
動画の音がずっと聞こえるとわずらわしいので、近くだけで聞こえるように VideoPlayer の AudioSource を調整します。
こちらでは、スポーン地点(左下)でビデオを見たあと、トンネルをくぐってメインのエリアに行くところで音が消えるようにしています。
このワールドはこちらです!→ ころがりうむのところ
コメント
コメントを投稿