見出し画像

建築ビジュアル CG 360度パノラマ制作~Unreal Engine 5~ VR動画編集

こんにちは。STUDIO55技術統括の入江です。
前回は、D5 Render を使った バーチャルツアー 制作の展開を紹介しました。

今回は、Unreal Engine 5 を使った VR動画制作 についてお話しをします。
また、VR映像の編集書き出しについても触れますので、アクションカム を扱われるような方も、VR動画編集の参考にしてください。


Unreal Engine VR動画制作

VR動画 の制作には、Unreal Engine 5を使います。
Twinmotion でも制作は可能です。しかし、クォリティを含め、レンダリングスピード等、よりメリットの高い UE5 の使用想定でお話しをします。

Unreal Engine 5はリアル系ゲーム制作で有名なリアルタイム3Dエンジンですが、マーケティングコンテンツ制作など幅広い分野にも活用されており、多彩な表現手法が可能です。その一例として、VR動画が挙げられます。

3dsMax のモデルデータを Datasmithリンク で UE5 に送ります。
※使用バージョン詳細は UE 5.2 です。

Datasmith からエクスポートしたマテリアルは ”ややこしい設定” になっている場合があるため(苦笑)、素材によってノードの組み換えや、設定のやり直しを行います。

マテリアル設定変更作業 画面の一例

その他、ライティング、環境、ポストプロセスボリューム などを設定して、ビジュアルをリアルタイムに調整していきます。

UE5.2 画面

パノラマに対しての特別なカメラ設定をしない想定で、今回は行います。
※UE5 では、ステレオスコピック(Stereo 3D)形式の書き出しも可能です。

カメラ アニメーション を シーケンサーで設定 します。

シーケンサー設定画面

キーアニメーション の設定ができたら、ムービーレンダーキュー で、360度パノラマレンダリングの書き出し設定を行います。

デフォルトは デファードレンダリング になっています。

ムービーレンダーキュー画面

これを「パノラマレンダリング」に切り替えます。

出力設定

エクスポートは .jpgシーケンス[8ビット]
アウトプット レゾリューション を、3840×2160(4K) で設定します。

👉 現在、YouTube は 4K視聴 が上限です。今回は、作成したVR動画を YouTube で共有したいと思っているので、特にこの解像度の設定にしています。


📝4Kモニタ解像度の種類・一覧

一口に ”4K” と言っても種類があるため、参考一覧にしておきます。

4K UHDTV フルHD : 3840×2160 (8,294,400) 16:9
QFHD : 3840×2160 (8,294,400) 16:9
4K (QFHD) : 3840×2160 (8,294,400) 16:9
4K (DALSA) : 4096×2048 (8,388,608) 2.00:1(2:1)
4K (Cinema) : 4096×2160 (8,847,360) 56:135(約17:9)

👉 4K (Cinema) : アメリカの大手映画制作会社が加盟する団体である Digital Cinema Initiatives (デジタル シネマ イニシアチブ)が定めた、動画の解像度。 いわゆる「4Kデジタルシネマ」「映画の4K解像度」
映画館にあるプロジェクタで最も普及している2Kから、この解像度に少しずつ移行しています。(引用 : ウィキペディア)


ムービーパイプラインレンダリング で書き出されるフッテージは、エクイレクタンギュラー投影 の 画像連番 になります。

360°パノラマ フッテージ 画像

UE4 では直接 mp4 で書き出すことができましたが、UE5 から、JPG や PNG などの 画像連番書き出しがデフォルト になりました。

mp4 として書き出したいような場合は、手動での追加設定が必要になります。

🔧UE5 mp4 書出し設定⚙

UE5 で 直接 mp4 データとして書き出したい場合の設定について書いておきます。

mp4 書き出しには、『コマンドライン エンコーダ』を使用します。
そのまま コマンドライン エンコーダ を使用しようとすると、このようなcautionマーク付きの注意説明が出ます。

コマンドライン エンコーダー

この内容を踏まえ、以下の設定を行います。

① 外部から ffmpeg.exe をダウンロードします。

画像引用 : FFmpegページ

Windows の「gyan.dev からの windows ビルド」ページを開き、リリースビルド の full.7z をダウンロードします。

ffmpeg-release-full.7z

② UE のプロジェクト設定のプラグイン項目 『Movie Pipeline CLI Encoder』 に、ffmpeg.exe の格納された binファイルのパス を登録します。

Movie Pipeline CLI Encoder

以下の太字を手入力します。

・Executable Path : C:\ffmpeg\ffmpeg-7.1-full_build\bin\ffmpeg.exe
・Video Codec : libx264
・Audio Codec : aac
・Output File Extension : mp4

👉 AVI で書き出したい場合は、コーデックを「libxvid」、アウトプットは「avi」です。

コマンドラインエンコーダ に、cautionマークの付きの注意説明がなくなっているのが確認できます。

ムービーレンダーキュー画面

これで、直接 mp4 データとしてレンダリングすることができます。

👉 制作現場では 画像連番書き出しが通常のワークフローであるため、ここではデフォルトのまま設定し、動画編集ソフトを使って改めて mp4 書き出しを行います。

🎬Adobe Premier ProでVR書き出し

書き出された画像フッテージを、動画編集ソフトの Adobe Premier Pro を使って編集します。

Adobe Premier Pro のVR編集画面

VRシーケンス設定

VR用のシーケンス設定は、大きく2種類あります。

🔸Monoscopic(モノスコピック)

Monoscopic(モノスコピック)は、VR映像のシーケンス設定の1つです。

Premier Pro|シーケンス設定「MONOSCOPIC 29.97」

Monoscopic(モノスコピック) とは、”1つの視点から見た映像” を指します。
具体的には、VR映像を1枚の360度パノラマ画像として表示し、両目で同じ映像を見る形式の事です。

「mono」とは ”単体” を意味し、「scopic」は ”見る” を意味します。それを組み合わせた言葉で、"単一の視点で映像を見る" という意味です。これは通常の平面映像に近い形式で、2D の 360度映像 を VR で表示する 際に使われます。
それに対し、「ステレオスコピック(Stereoscopic)」は、両目に別々の画像を送り、3D立体効果 を生み出す形式です。

モノスコピック は片方の目だけの情報をレンダリングするため、ステレオスコピック と比べて処理が軽く、制作や再生が比較的容易な特徴があります。シンプルでリソース負荷が少ない形式です。

ここでは、あくまでモニター視聴が前提でもあるため、Monoscopic 形式 で設定を行います。


🔹Stereoscopic(ステレオスコピック)

両目に別々の画像を送る ステレオスコピック 編集画面は、以下のようになります。

Premier Pro : Stereoscopic 編集画面

ここでは UE5 から書き出したフッテージは 単体映像 で扱っているため、 仮に入力したテキストだけで見てください。

Premier Pro : VR アナグリフ表示

テキストが アナグリフ になっているのが分かるかと思いますが、画像は単一表示になっています。

👉 アナグリフ : 左目に赤、右目に青のフィルムを貼ったメガネを通して見る立体画像の事。

ステレオスコピック 設定では、RGB色収差のような画面になります。CG のパノラマ画像の書き出しは 左右別視の画像ではないため、仮に手動で色収差を加えた画像で、ステレオスコピック のイメージを参考として載せておきます。

ステレオスコピック 参考例

🖱Monoscopic 設定⌨

シーケンス  を VR プロパティ(VRビデオ) で設定します。

新規シーケンス VR ビデオ 設定タブ

・投影法 : 正距円筒 (=エクイレクタンギュラー投影のこと)
・レイアウト : 平面視(=モノクロスコピックのこと)

Premier Pro シーケンス設定

~VR画面設定~

Adobe Premier Pro には、便利な「VR ビデオ表示を切り替え (Toggle VR Video Display)ボタンがあります。
ボタンエディタ から アイコンをドラッグ&ドロップして配置しておくと、切替がしやすくなります。

VR ビデオ切り替えアイコン

VR ビデオ表示 に切り替えた初期設定は正方形の画角であるため、少し見ずらい印象です。
そこで、VR表示のモニタービューのサイズを変更します。

初期設定のVR表示ディスプレイサイズ

画面右クリックから VRビデオ 「VRビデオ設定」を開き、モニタービュー設定を右側の数値に書き換えます。

(左)デフォルト数値 : 108°×108°
(右)変更数値入力 : 140°×80°

すると、このような16:9 に近い横長画面になります。
これで、イメージがしやすくなります。

モニタービュー設定の変更

補足解説しておくと、VR動画編集のデータ負荷が高く、タイムラインが赤表示でスムーズな再生ができないような場合には、プロキシ を作成します。

「プロキシを作成」画面

この場合も、「プロキシの切り替え」ボタンを設定しておくと便利です。

Premier Pro : 「プロキシの切り替え」ボタン

~VR画面のテキスト編集~

VR映像では、通常のテキストや コールアウト等は、そのまま配置したのでは ゆがんでしまいます。

VR上で表示されたテキスト

その場合、ビデオエフェクトの「VR 平面として投影」を適応させて設定を行います。それによって、VR空間上でテキストの平面表示が可能となります。

「VR 平面として投影」エフェクト

🔦Premier ProをVR編集に使用する理由🤔

VRの映像編集 では、個人的に Adobe Premiere Pro をメインに使用します。その理由について、少し話しをしておきます。

Premiere Pro2015.03 バージョン から、 VR 動画の表示、書き出し、共有を向上させるツールが実装され、長きにわたって没入型 VR 動画エディターの標準ツールとして使用されてきており、VR編集の定番として有利な特徴があります。その中でも、VRの特性となる メタデータ が付加されるというのも、Premier Pro を使用する理由の1つです。

当然、Adobe After Effects で VR編集を行うこともあります。ただ、AE からの直接書き出しでは VR映像 に メタデータ が自動付加されません。そのため、主に AE では  VR映像の トラッキング や 合成処理、シームライン の画像処理 などで利用し、コア編集はあくまで Premiere Pro で行います。
AE からの直接書き出しや、編集不要なパノラマ映像である場合は、Media Encoder を使います。Media Encoder で VRメタデータ を付加させるためです。

このように、各動画ソフトの特性を理解した上で、案件によってワークフローを構築します。
※VRの メタデータ については、また別機会で取り上げます。

Premier Pro 設定のメタデータ項目
Premier Pro 設定 :
XMP メタデータ書き出し オプション設定内容

メタデータ 以外 の理由としては、Premier Pro と After Effects の作業性の違いが挙げられます。

お伝えしたように、Premiere Pro では、VRモード VR プレビュー機能 を搭載しており、直感的なタイムライン編集が可能です。一方、After Effects では VR関連の機能が遅れて導入されましたが、VR Comp Editor を使用して「出力コンポジション」と「編集コンポジション」を追加し、元データのコンポジションと編集タブを切り替えながら VR マスターカメラ を操作する必要があります。
AE では VRエフェクトに強みがあるものの、VRシーケンスの基本的な編集や書き出しには、依然として Premiere Pro の方が優れた効率性を持っています。

そのため、特に高度な編集が必要ない場合は、Premiere Pro だけで作業を完結させるのが最適です。

AE : VR Comp Editor を使ったVR編集画面

補足として付け足しますが、Premier Pro では 6DOF を完全に再現する機能がないため、そのような高度なVR編集を行う場合には、AE で Mocha なども活用した VRトラッキング を行います。

🌟VR書出し設定(ビットレート)

VR映像においては高い解像度が要求されるため、動画書き出し設定も考慮する必要があります。

高解像度(4K以上)や高フレームレート(60fps以上)の映像では、150 Mbps のビットレートが適切な場合があります。特にプロフェッショナル用途や、後工程での編集のために品質を落としたくない場合に選ばれる設定ですが、あくまでデータ容量との兼ね合いです。ビットレートを 150 Mbps に設定すると、ファイルサイズはかなり大きくなります。

例えば、以下の計算式で容量を見積もっておきます。

ファイルサイズ (GB) = ビットレート (Mbps) × 時間 (秒) ÷ 8 ÷ 1024

(例)150 Mbpsで10分(600秒)の動画をエンコードした場合

150 × 600 ÷ 8 ÷ 1024 ≈ 11 GB

配信やストレージの制約を考慮して、ビットレート設定は目的に応じて調整するのが理想的です。また、高いビットレートを設定しても、元の映像品質やエンコードの効率によっては、肉眼での違いがほとんど分からないことがあるため、どこまでこだわるかといった判断が必要です。

📝ビットレートガイドライン

YouTube Vimeo のガイドラインは、ビットレート設定の参考として目安になります。
以下にリンクを添付しておきます。

・YouTube ガイドライン

画像引用 : YouTube Help 

・Vimeo ガイドライン

画像引用 : Vimeo 動画とオーディオの圧縮ガイドライン

代替オプション

H.265 (HEVC) を使えば、同等の品質をH.264よりも低いビットレートで実現できます。これにより、ファイルサイズを小さく抑えながら高品質を維持することが可能です。


🎞VR動画サンプル

サンプルで作った 今回の VR動画 の リンク を共有します。
画面をドラッグして回転させながら360度動画を楽しんでください。

👉 PC視聴では画質を 2160s。また、携帯視聴の際には、”高画質” に変更して ご視聴ください。共に、画面の歯車アイコンからの設定となります。

PCで視聴のYouTube設定
携帯で視聴のYouTube設定

今回は YouTube で動画を共有しましたが、通常の Windows PC でも 360°ビデオの再生は可能です。ローカル再生の方がスムーズに視聴できるため、通常の視聴ではその方がシンプルで快適です。

📝WindowsのVR動画視聴方法

Windows上でVR動画を再生させるには、Windows Media Player(従来版) では再生が難しくなっています。
そのため、現状では「映画&テレビ」で再生を行います。
「映画&テレビ」は Microsoft が提供するWindows標準のアプリケーションで、主に 動画や映画、テレビ番組の再生 に使用されます。Windows 10および 11に搭載されており、MP4 や WMV など一般的な動画ファイル形式の再生が可能です。

再生方法を記載しておきます。

mp4 データ を 右クリック → プログラムから開く → 映画 & テレビ

360°ビデオ再生方法

画面下部の「360度ビデオとして再生」アイコンをクリックします。

8K動画再生画面 : 「360度ビデオとして再生」アイコン

デスクトップ再生では 4Kにこだわらず、より高解像度の映像で再生することが可能ですので、より高い解像度での視聴を試してみてください。