Unreal Engine 5(UE5)でゲーム内のカメラ映像を保存し、あとからゲーム内で再表示する方法を紹介します。一般的にスクリーンショットを撮る方法がよく使われますが、ここではそれ以外の手法について解説します。

1. レンダリングターゲットを使用する

レンダリングターゲット(Render Target)を使用することで、特定のカメラ映像をリアルタイムでキャプチャし、テクスチャとして保存できます。この方法では、スクリーンショットのように静的な画像を保存するのではなく、動的に映像を管理できます。

2. 手順

以下の手順で設定します。

レンダリングターゲットの作成

コンテンツブラウザで「右クリック」→「マテリアル&テクスチャ」→「レンダリングターゲット」を選択し、新しいレンダリングターゲットを作成します。

シーンキャプチャコンポーネント2Dの配置

「シーンキャプチャコンポーネント2D」(Scene Capture Component 2D)をレベル内のアクターに追加し、視点を調整します。

レンダリングターゲットと接続

シーンキャプチャコンポーネント2Dの「Texture Target」に、作成したレンダリングターゲットを指定します。

マテリアルの作成

レンダリングターゲットを使用するために、マテリアルを作成し、「テクスチャサンプラー」にレンダリングターゲットを設定します。このマテリアルを任意のオブジェクトに適用することで、カメラ映像を再表示できます。

3. 動画として保存する方法

静止画ではなく、ゲームプレイ中の映像を保存して再生したい場合は、UE5の「シーケンサー」や「Niagara」エフェクトを活用できます。

シーケンサーで録画

シーケンサーを使用すると、ゲーム内カメラの映像をキャプチャし、ムービーとして出力できます。その後、動画をテクスチャに変換することで、ゲーム内で再生することが可能です。

Media Textureで再生

動画ファイルを「Media Texture」としてインポートし、ゲーム内のスクリーンやオブジェクトに適用することで、カメラ映像を再生できます。

まとめ

UE5では、単純なスクリーンショット以外にも、レンダリングターゲットを利用したリアルタイム表示や、シーケンサーを活用した動画保存が可能です。用途に応じた方法を選択し、ゲーム内の演出に活用してみてください。