前回の復習
これまで全4回にわたって基礎知識と設定について解説いたしました。
いよいよ今回からハンズオン編に入ります!
このハンズオンではUnreal Engine 5.4を使用して進めます。
nDisplay Config ハンズオン
今回はLEDパネル1枚の場合のnDisplay Configを作成します。
ハンズオンは下記の流れで進めます。
- Unreal Projectの作成
- nDisplay Configの作成
- メッシュの形状の追加とスケーリング
- シーンへ追加
作成するnDisplay Configには下記の情報が格納されます。
- LEDの形状(Meshデータを参照)
- LEDへ描画するPCの台数とIPアドレス
バーチャルプロダクションで必要不可欠な、トラッキングデバイスやレンズキャリブレーションに関しては、nDisplay Config内には情報が保存されません。詳しくは次回以降で解説していきます。
nDisplay Configでは、カメラの座標やレンズ情報はICVFX Camera Component経由で受け取ります。
今回はnDisplay Configのハンズオンなので、nDisplay Configの作成から、ICVFX Camera Componentの宣言までを行います。
1. Unreal Projectの作成
はじめに、Unreal Engineのプロジェクトを作成します。
プロジェクトを作成する際は、InCameraVFXテンプレートを元に作成すると楽なのでこちらを使用しましょう。
Project LocationとProject Nameを入力したらCreateを選択します。
起動すると下図のような画面になります。
2. nDisplay Configの作成
起動したら、nDisplay Configを作成しましょう。
Content Browserで右クリックをしてメニューを開き、「nDisplay > nDisplay Confing」を選択します(下図参照)。
nDisplay Configを新規作成するか、他のConfigをベースとして作成するか聞かれるのでCreate New Configを選択して新規作成します。
Content BrowserにnDisplay Configのアセットが生成されています。
分かりやすいように名前を変更しておきましょう。
作成したnDisplay Configアセットをダブルクリックで開くと、このような画面になります。
まず、使用しないComponentを削除しておきます。
下図のようにに表示されている「nDisplayScreen」を選択し、削除しましょう。
3. メッシュの形状の追加とスケーリング
次に「Add」ボタンから、StaticMeshとICVFX Camera Componentを追加します。
今回はEngine内のコンテンツに含まれるStatic Meshをスケールして使用します。
選択したStaticMeshにplane_100x100を割り当てます。
スケール値を実際のLEDパネルの大きさと合うように編集します。
例えば、横5.0m×高さ2.5mのパネルの場合は、Yを5.0、Zを2.5に設定します。
ただ、この状態だと下半分が埋まってしまうので、Z軸のオフセットを反映します。
高さが2.5mなのでその半分の125cm(1.25m)をLocationのZ軸に設定します。
オフセットを反映したら、次にClusterを追加します。
Clusterとは、nDisplayに対してレンダリングするためのワークステーション群のことを指します。
今回、1パネルは1台での描画なのでインスタンスを1つ追加します。
「Add」ボタンを押すと下記のウィンドウが表示されます。
Nameや解像度のPresetを自分の作業環境のMonitorとIPアドレスに変更します。
ここで主に変更するのはNameとPresetとHost IP Addressです。
- Name:レンダーの名前です。会社で管理されているPCであれば、インスタンスの管理番号とかが適切でしょう。
- Preset:このPCが最終的に出力する解像度と同じ解像度です。今回はUltra HDなのでUltra HDに変更をします。
- Host IP Address:接続するホストのIPアドレスを設定します。
その他必要な設定があれば確認し、Addをクリックします。
Clusterを追加すると、下記のようにOutput Mappingに赤枠で囲まれた黒い画面が出現します。
この画面が暗いのは、まだClusterがどのようにレンダリングするか決められていないからです。
それでは、Projection Policyを設定していきましょう。
左のClusterのWindow内のVP_0を選択して、Detail PanelのProjection Policyを変更します。
Projection PolicyのTypeをMeshに変更します。
変更するとMeshの項目を選択できるようになるので、StaticMeshを選択します。
Viewportの映像が描画されました。
MeshのLocation.xに300を入力すると正しく描画されるようになります。
300という数字は、Projection原点から約3メートル離すということで今は特に意味はありません。これは後程TrackingDeviceを設定する際に改めて編集する必要があります。
カメラの座標を変更すると、Innerが正しく描画されていることが確認できます。
4. シーンへ追加
CompileしてSavedします。
シーンにドラッグアンドドロップすると下記のようになります。
まとめ
今回はLEDパネル1枚の場合の、4K環境のnDisplay Configを作成しました。
次回は、Switchboardを使用して画面上に映像を出力し、カメラトラッキングでカメラを繋げるまでの流れのハンズオンを進めていきます。お楽しみに!