Unreal Engine のレベル内でビデオをプレイする | Unreal Engine 5.7 ドキュメンテーション | Epic Developer Community

ドキュメントの通り**…とはいかなかった**。ここでは実際にやってみた感想などを述べる。

MediaPlayerアセットを作成する

<aside> ⚠️

動画ファイルはエクスプローラーから置く

動画ファイルをコンテンツドロワーにD&Dすると「ファイルメディアソース」が生成されるが、これを開いてみるとパスがD&D元になっている。

動画ファイルをプロジェクトに取り込んだわけではないので、この状態でパッケージ化すると当然エラーとなる。

よって公式ドキュメントの通り、プロジェクト内のフォルダの中にエクスプローラーから動画をD&Dする必要がある。

image.png

なお、動画ファイルの格納先はどこでもいいわけではなく、公式ドキュメントの通り「Content/Movies」である必要がある。それ以外のパスだと警告が出る。この警告には「Content/Movie」とあるが「Content/Movie**s**」が正しい。

image.png

「Content/Movies」であれば警告が消える。

image.png

</aside>

<aside> ⚠️

レベルに配置する場合、UE5.3からは「Media Plate」を使う方法が追加されたらしい。

UE5のレベル内に動画をアクター(スクリーン)に配置して再生する2つの方法。Media Plateを使うと簡単に動画を配置再生できます。

</aside>

Media Textureを使用するマテリアルを作成する

公式ドキュメントではワールドに配置したパネルにMedia TextureをD&Dする方法で自動生成しているが、以下の手順で作成することも可能。

まず、コンテンツドロワー内で右クリックしてマテリアルを作成する。

次に前工程で作られたMedia TextureをグラフにD&Dして配置する。これを最終カラーにつなぐ。(これで配置したはずのノードが何故か消えてかなり沼った。後工程で映像が再生されなかったらここを再度確認したほうが良い。)

なお、UIで使う場合はMaterialDomainUserInterfaceに変更する。

image.png

UI上で再生してみる

公式ドキュメントはワールドに配置する場合だが、ここではUIで再生する方法を述べる。 ワールドに配置するかUIに配置するかの違いは以下のみ。

【UE5】UMGで動画ファイルを再生する方法

  1. ウィジェットブループリントを作成し、キャンバスとイメージを配置。

  2. イメージに先ほど作成したマテリアルを割り当てる。

    image.png

再生できない

MP4は再生できない

DX12要因と言われている。執筆時現在はElectra Playerプラグインを有効にするのが一般的らしい。有効にするだけでOK。UE5.5で使ってみたが特に異常は見られなかった。