Movie Render Pipeline は、Unreal Engine のオフラインの画像シーケンスおよびムービー レンダリング ソリューションです。 Unreal Engine の 3D レンダリングやライティングの機能を使ってリニア コンテンツを作成するときに、Movie Render Pipeline を使えば、従来のリアルタイム レンダリングに比べて高品質の結果を得られます。 Movie Render Pipeline を使ったオフラインのレンダリングでは、レイ トレーシング グローバル イルミネーションやレイ トレーシング反射などの機能の品質、精度、外観を大幅に向上させる設定やコマンドを使用することができます。 またオフラインのレンダリングでは、モーション ブラーを改善したり、不要なアンチエイリアス アーティファクトを削除したりすることもできます。
Movie Render Pipeline でプロジェクトをレンダリングするときに使うツールは 2 つあり、それぞれ異なる機能でプロジェクト ニーズに応えます。 ムービー レンダリング グラフ (MRG) はグラフベースのインターフェースを提供し、これを使用して、レンダリング演算を実行するロジックをビルドできます。 ムービー レンダリング キュー (MRQ) を使用すると、プリセットとスクリプトを作成してレンダリング プロセスをキューに入れ、高品質の画像をエクスポートできます。
ムービー レンダリング グラフ
Movie Render Graph (MRG) はグラフベースのツールで、Movie Render Pipeline と連携して高品質のレンダリング コンテンツをエクスポートするためのロジックをビルドできます。 レンダリングするフレームやレンダリング設定、エクスポートするファイルの種類を、グラフを使って指定します。 これらのノード ベースのグラフは、チームの規模に応じてシンプルにしたり複雑にしたりできます。
単一のショットをレンダリングするグラフの場合もあれば、複雑なマルチショットの複数のワークフローにまたがるグラフの場合もあります。 こうしたグラフをカスタマイズして再利用できるアセットとして保存し、プロダクション パイプラインの柔軟性を大幅に向上することができます。
この新しい MRG は、レガシーな MRQ プリセット システムと互換的に使用できます。 MRQ レンダリング設定の詳細については、次のドキュメントを参照してください。
前提条件
MRG の使用を始める前に、MRQ および レンダリング設定と形式について理解しておくことをおすすめします。
レンダリングの対象となるレベル シーケンスを含むプロジェクトが必要です。 レンダリングの対象となるレベル シーケンスを含むプロジェクトがない場合は、サンプルとして Meerkat デモに入っている Main_Seq レベル シーケンスを使用できます。
Movie Render Queue プラグインを有効にします。 メニュー バーから [Edit (編集)] > [Plugins (プラグイン)] の順に進み、[Rendering (レンダリング)] セクションで Movie Render Queue プラグインを見つけるか、検索バーで検索します。 このプラグインを有効にして、エディタを再起動します。
プロジェクト設定でアルファ チャンネル サポートを有効にする
以前は、アルファ出力サポートを有効にするには [Project Settings (プロジェクト設定)] の Enable alpha channel support in post-processing (experimental) プロパティで 3 つの値のいずれかを選ぶ必要がありました。 UE 5.5 ではこれを簡素化し、[Alpha Output (アルファ出力)] チェックボックス 1 つにしました。 [Alpha Output] チェックボックスのデフォルト設定はオフですが、一部のテンプレート (フィルム/TV/バーチャル プロダクションなどのテンプレート) では自動的にオンになります。 アルファ出力を無効にする場合は、[Project Settings] で行います。 メニュー バーで [Edit] > [Project Settings] の順に進み、[Engine (エンジン)] の下の [Rendering] を選択します。 アルファ設定は以前は [Post-Processing (ポストプロセス)] セクションにありましたが、現在は [Default Settings (デフォルト設定)] セクションにあります。 ボックスをクリックするとアルファ出力が無効になります。
また、ディファード レンダラでホールドアウトを有効にするために必要になった、[Support Primitive Alpha Holdout (Deferred) (プリミティブ アルファ ホールドアウトをサポート (ディファード))] という新しいプロジェクト設定もあります。 Film/TV テンプレートやサンプルでは、デフォルトで [On (オン)] に設定されますが、ホールドアウトを使用していない場合にパフォーマンスに影響を与えないように、ゲーム プロジェクトはこれを無効にすることができます。 このプロジェクト設定が無効になると、モディファイアでホールドアウトを設定する際に、MRG がユーザーに通知します。
ムービー レンダリング グラフを開く
ムービー レンダリング グラフはムービー レンダー キューからアクセスできます。 ムービー レンダー キューを開くには、次の手順を実行します。
メニュー バーから、[Window (ウィンドウ)] > [Cinematics (シネマティックス)] > [Movie Render Queue (ムービー レンダー キュー)] を選択します。 この操作によりムービー レンダー キュー ウィンドウが開きます。
[Sequencer (シーケンサー)] タブからもムービー レンダー キューにアクセスできます。[Render Movie (ムービー レンダリング)] ボタンの横にある縦方向の省略記号を使用して [Render Movie Options (ムービー レンダリングのオプション)] を展開します。 [Movie Render Queue] オプションを選択し、[Render Movie] ボタンをクリックします。
[Render (レンダリング)] ボタンをクリックして、レベル シーケンスを選択します。
[Settings (設定)] カラムの [Unsaved Config (未保存の構成)] の横にある矢印をクリックし、[Replace with Graph (Beta) (グラフ (ベータ) に置き換え)] を選択します。 [Settings] カラムに「DefaultRenderGraph」が表示されます。
「DefaultRenderGraph」の横にある矢印をクリックして、[New Graph (新規グラフ)] を選択します。 [Save Asset (アセットを保存)] のウィンドウが開きます。
グラフに名前を付け、[Save (保存)] をクリックします。 新規ムービー レンダリング グラフ構成アセットが [Movie Render Queue Settings (ムービー レンダー キュー設定)] カラムにプリセット アセットとして表示されます。
編集するために [Settings] カラムの MRG 構成アセットをクリックして開きます。
ムービー レンダー キュー
ムービー レンダー キュー (MRQ) は、キューをバッチし、ムービー レンダリング パイプラインを使用して Unreal Engine のコンテンツを処理するためのツールです。 ムービー レンダー キューは、高品質のレンダリング画像、プロダクション パイプラインへの簡素化された統合、ユーザーによる拡張性を実現するために作成されました。 MRQ を使用すると、設定、プリセット、スクリプトの組み合わせを使用してコンテンツの高品質の画像や動画のファイルを手動でエクスポートしたり、レンダリング処理を自動化したりすることができます。
ムービー レンダー キュー は、高品質の放射状モーション ブラーを生成できる時間サブサンプリング機能など、高品質なレンダリングを生成するための複数の機能をサポートしています。 また、適切なプロジェクト/シーン設定を使用して、半透明のピクセル値を含む画像をエクスポートしたり、リニア データを使用して 16 ビット HDR 画像を生成したり、レンダリング設定をアセットに保存して再利用や共有することもできます。 バッチ レンダリング ジョブの実行をサポートするレンダー キューを使用し、複数のジョブとその設定を一度に管理できます。
前提条件
ムービー レンダー キューは、プラグインであるため、使用する前に有効にしておく必要があります。 Unreal Engine のメイン メニューで [Edit (編集)] > [Plugins (プラグイン)] の順に移動し、[Rendering (レンダリング)] セクションで [Movie Render Queue (ムービー レンダー キュー)] を見つけて有効にします。 有効にしたら、エディタを再起動する必要があります。
レンダリングするレベル シーケンスを含むプロジェクトを作成している。 まだプロジェクトを作成していない場合は、Meerkat デモに事前に用意されているコンテンツ サンプルをご利用いただけます。
ムービー レンダー キューを開く
[Movie Render Queue (ムービー レンダー キュー)] ウィンドウは次の 2 通りの方法で開くことができます。
Unreal Engine のメイン メニューから、[Window] > [Cinematics] > [Movie Render Queue] に移動します。
[Sequencer] で、ツールバーの [Render Movie] ボタンの横にある縦方向の省略記号をクリックします。次にドロップダウンから [Movie Render Queue] を選択し、[Render Movie] ボタンをクリックします。
この 2 つのどちらかのオプションを実行すると、[Movie Render Queue (ムービー レンダー キュー)] ウィンドウが開きます。
画像をクリックするとフル サイズで表示されます。
インターフェースの概要
ムービー レンダー キュー インターフェースは次の 4 つの主要な領域で構成されています。
[Toolbar (ツールバー)]:レンダリング ジョブの追加や削除、現在のジョブ リストのロードや保存のメニューが含まれています。
[Jobs (ジョブ)]:レンダリングするシーケンスをキューに入っている順に表示します。 リストの最上位の項目がジョブとみなされます。 これらの項目には、各ジョブのコンフィギュレーション設定も含まれています。
[Job Details (ジョブの詳細)]:選択されたジョブの詳細です。 名前、レベル シーケンス アセット、ジョブ中に実行するレベル、このジョブの作成者をリストします。
[Start Render (レンダリングを開始)]:マシンでローカルに、つまり、マシンの個別のプロセスで、レンダリングを開始します。
ツールバー
ツールバーには、ジョブを追加および削除するメニューがあります。 レンダリング キューに新しいシーケンスを追加するには、[+ Render (+ レンダリング)] ボタンをクリックし、レベル シーケンス アセットを選択します。 また、コンテンツ ブラウザからジョブ領域にシーケンスをドラッグして、ジョブ リストにシーケンスを追加することもできます。
ジョブ リストからシーケンスを削除するには、ジョブを選択してツールバーの [-] ボタンをクリックするか、キーボードの Delete キーを押します。
また、ツールバーを使用して、現在のジョブ リストを Queue Preset アセットとして保存することもできます。 [Unsaved Queue (未保存のキュー)] ボタンをクリックし、[名前を付けてキューを保存] を選択します。 次に、Movie Pipeline Queue アセットに名前を付けて、プロジェクトの任意の場所に保存するように求められます。
[Unsaved Queue (未保存のキュー)] ボタンのテキストが Movie Pipeline Queue アセットの名前に変更されます。
作成するすべての Movie Pipeline Queue アセットがこのメニューにリストされます。 キューを選択すると、保存されたプリセットに一致するようにジョブ リストが設定されます。 これにより、キューのコピーがジョブ エリアにインポートされます。 このメニューの [Save Queue (キューを保存)] を選択して保存しない限り、ジョブリストの変更はアセットに影響しません。
ジョブ
ジョブ領域には、レンダリング対象のレベル シーケンスのリストと、そのレンダリング設定や出力ディレクトリが表示されます。
ジョブの [Settings (設定)] エントリをクリックすると [Settings (設定)] ウィンドウが開き、レンダリング設定、出力ディレクトリ、エクスポート形式を指定できます。
メイン ツールバーで、[+ Setting (+ 設定)] ボタンをクリックして設定のリストを開きます。 設定をクリックして、このレンダリング構成に対してオンとオフを切り替えます。 その後、この設定をさらに構成できます。
[Unsaved Config (未保存の構成)] ボタンをクリックしてプリセットを選択すると、ジョブに保存されたプリセットを適用できます。
ジョブの [Output (出力)] エントリは、[Output (出力)] 設定で設定された、画像やビデオのレンダリング先のフォルダへのリンクです。 ここをクリックすると、このフォルダをターゲットとする、ファイル エクスプローラー ウィンドウが開きます。
レンダーのカスタマイズの詳細については、「レンダリング設定と形式」ページをご覧ください。
ジョブの詳細
ジョブを選択すると、ジョブ詳細領域でジョブの詳細を確認できます。
この領域には、選択したジョブの次のフィールドが表示されます。
| 名前 | 説明 |
|---|---|
ジョブ名 | ジョブの名前。 これは、デフォルトでは、レベル シーケンス アセットの名前に設定されていますが、変更することができます。 [Job Name (ジョブ名)] フィールドは、デフォルトの [Burn In (バーンイン)] オーバーレイにも表示されます。 |
Sequence (シーケンス) | シーケンス アセットの参照。 ジョブに別のシーケンスを指定したい場合は、ここで参照するシーケンスを変更できます。 |
マップ | レンダリング時に実行するレベル。 シーケンスが Spawnables (スポーン可能なもの) を使用している場合、同じシーンを異なるレベルでレンダリングできます。 |
作者 | ジョブの作成者。 このフィールドはデフォルトで空です。 |
コメント | コメントを入力する任意のフィールド。 このフィールドはデフォルトで空です。 |
レンダリングを開始
クリックしてレンダリングを開始できるボタンには次の 2 つがあります。
[Render (Local) (レンダリング (ローカル))] のレンダリング プロセスは、Unreal Engine と同じで、Play in Editor セッションを起動して、そのセッションでレンダリングを行います。 ローカル レンダリングを行う際には、変更内容を保存する必要はありません。
[Render (Remote) (レンダリング (リモート))] は、ジョブをレンダリングする別のプロセスを起動します。 外部のプロセスでディスクから保存したファイルを読み取れるよう、プロジェクトの変更を保存しておく必要があります。
[Remote (リモート)] オプションを使用すると、リモート レンダリング ファームを実装することができます。 各レンダリング オプションのデフォルトの動作はプロジェクト設定で定義されており、独自のコードを実行するように調整することもできます。これは、サードパーティ製のレンダリング ファーム管理ソフトウェアを使用する場合に役立ちます。 また、リモート レンダリング プロセスの起動に使用されたコマンドは、出力ログに書き込まれます。これは、独自の自動化レンダリング ファームを構築する際に参考として使用することができます。
ジョブ詳細でレンダリングするレベル アセットを指定するため、レンダリング時に同じレベルを開いておく必要はありません。 ムービー レンダー キューは、レンダリング ジョブの実行時に指定されたレベルを自動的に開きます。
レンダリング プレビュー
レンダリング ジョブが実行されると、ムービー レンダー キューはレンダリング プレビュー ウィンドウを表示し、現在のレンダリングのビジュアル状態を関連情報とともに表示します。 レンダリングが完了すると、プレビュー ウィンドウは自動的に閉じます。
[Render Preview (レンダリング プレビュー)]:このビューには、レンダリングの現在のビジュアル ステータスが表示されます。 各フレームがここに表示されると同時に、出力ディレクトリにも保存されます。 こちらのプレビューは、GPU の最新のサンプル データに基づいており、最終的なレンダリングよりも低い品質で表示される場合があります。 レンダリングでタイリングが有効になっている場合、プレビューでは右下のタイルのみが表示されます。
[Overall Render Progress (全体的なレンダリング進行状況)]:この詳細情報では、現在レンダリングされているシーケンスと、全体の進行状況、経過時間、残り時間の推定値を表示します。
[Current Camera Cut Progress (現在のカメラ カット進行状況)]:この詳細情報では、現在レンダリングされているカメラと、現在のカメラ カットの進行状況が表示されます。
基本的なレンダリングを作成する
ムービー シーケンスの基本的なレンダリングを作成するには、次の手順を実行します。
ジョブの設定
ムービー レンダー キュー ツールを開きます。 メイン メニューから [Window] > [Cinematics] > [Movie Render Queue] に移動します。
[+ Render] ボタンをクリックしてシーケンスを選択し、シーケンス アセットをジョブ リストに追加します。
[Map (マップ)] プロパティで正しいレベルが設定されていることを確認してください。
出力設定
シーケンスを追加すると、出力先フォルダ、解像度、ファイル タイプなどの出力設定を調整できます。
[Settings] カラムで [Unsaved Config] をクリックして、ジョブの [Render Settings (レンダリング設定)] ウィンドウを開きます。
ムービー レンダー キューは、デフォルトで .jpg 画像のシーケンスを画像があります。 この出力形式を変更したい場合は、[.jpg Sequence [8bit] (.jpg シーケンス [8 ビット])] エントリを削除して、[+ Setting (+ 設定)] ボタンをクリックすると、他の出力形式を選択することができます。
[.jpg Sequence [8bit] (.jpg シーケンス [8 ビット])] エントリを選択して、Delete キーを 押し、次に [+ Setting (+ 設定)] ボタンをクリックして、[.png Sequence [8bit] (.png シーケンス [8 ビット])] を選択します。
[Deferred Rendering (ディファード レンダリング)] エントリを使用すると、ビューポートに表示されている画像をそのままレンダリングするように出力します。 このような基本的なレンダリングでは、この設定をそのままにしておくことができますが、画像をレンダリングするためには、この設定が必要です。
[Output (出力)] をクリックすると、ファイル名、ディレクトリ、解像度などの一般的な出力関連の設定が表示されます。
[Output Directory (出力ディレクトリ)] フィールドを変更する場合は、エントリの横にある […] ボタンをクリックして、新しいフォルダに移動し、[Select Folder (フォルダを選択)] を押します。 これで、画像シーケンスがここに出力されます。
変更が終わったら、[Render Settings] ウィンドウを閉じます。
レンダリング
これでシーケンスをレンダリングすることができます。
[Render (Local)] をクリックすると、シーケンスのレンダリング ジョブが開始します。 現在のレンダリングの進行状況を表示する Render Preview (レンダリング プレビュー) ウィンドウが表示されます。
レンダリングが完了したら、プレビュー ウィンドウが閉じます。 これで、ジョブのリンクされた出力テキストをクリックして、出力フォルダに移動し、出力画像シーケンスを表示できます。
ブループリントでの使用
ムービー レンダー キュー を使用して、ランタイム ビルドでムービーをレンダリングし、ブループリントを使用してユーザーのコンピュータにファイルを出力することができます。 詳細については、ランタイム ビルドの「ランタイム ビルドの Movie Render Queue」をご覧ください。