UE4 オンラインラーニング 物理ベースのショットビズを見る(2/3)

UE4

はじめに

映像関連について大いに興味があるので学んでみます。

参照元

物理ベースのショットビズ

現実世界のパラメータ

撮影現場をレプリケートした Unreal Engine のプロジェクト環境を使用して、実用的な機材でショットビズを撮影できるようにする方法を説明します。

UE4でストーリーボードをショットビズに変換する方法を説明

準備

P_B_Shotviz_B マップとShotViz_MasterSeqを開く

ShotViz_MasterSeq の内容

ShotViz_MasterSeq には13個のサブシーケンスがある

  1. 俯瞰的に電車を眺めるシーン
  2. 怪物越しに電車が映るシーン
  3. 電車内から怪物を見ているであろうシーン
  4. 車内で話しているシーン
  5. 車内で話しているシーン2
  6. 扉が開く
  7. 外に出る
  8. 再び俯瞰的に見るシーン
  9. 怪物にカメラが向く
  10. 怪物が牙をむく
  11. 男の兵(?)が何かのアクションをしようとしている
  12. 電車から眺める女性
  13. これから戦いが始まりそうなシーン

🤔完全につながっている事はわかりますね。一つ一つのシーンでちゃんと理由があってカメラの位置を決めているのでしょう。そこが理解したいところです。

現実世界のパラメータ

ショットビズでは物理的に正確な精度が求められるため、カメラのレンズパッケージだけではなく舞台セットで使用するライトなども把握しておく必要がある。

UE内ではカメラやライトに物理的に正確な値を設定することで可能な限り正確なショットビズが作成できる。
下図は講師の方が使っているカメラパッケージとライティングキットとの事。

下の図はマスターシーケンスShotViz_MasterSeqのシーケンスであり、ショットをダブルクリックすると詳細を見ることができライトやカメラの詳細な値を見ることができる

ここで重要なことは下図のようにカメラやライトがフレームに写り込んでいないこと。照明機材の位置について計画を立てておくことで、撮影後にライトの削除など尾VFX作業を行わずに済む。

  • 各機材の値を組み合わせる事でストーリーボードやアイデアを基に物理的に制度の高いショットビズを実現できる。
  • ショットビズを事前に作成すると機材に対する知識(設定可能値)も撮影する時には把握できており多大なメリットになる

様々なメディア Mixed Media

それぞれのストーリーボードに向けてポストプロセス ボリューム マテリアル インスタンスを作成し、これらをカメラ ビューポートで表示する方法を Deepak が紹介します。

ショットビズのベースとしてストーリーボードを使う場合、アニメのオニオンスキニングと同様にカメラのビューポートでこれらを表示しカメラ設定でフレーミングの精度を確保する必要がある

カメラのビューポートにボードを配置し、ショットビズを正確に合わせられるようにする。

やり方

前提条件

  • 予めボードがインポートされている事。このレクチャーではすでにボードが読み込まれていた。

手順

マテリアルインスタンスの準備
  1. マスターマテリアルの作成(教材ではM_Board_PP_Master という名前で作成されている)

    • PostProcessInputの内容またはImageのどちらかを出力するマテリアル
    • どちらを出力するかは Lerp で決める。(Lerpのため、5:5で出力などもある)
    • image/Colorがパラメータ化されている(マテリアルインスタンスにした時にそこから変更できる)
    • Opacity Value がパラメータ化されている(マテリアルインスタンスにした時にそこから変更できる)
    • マスターマテリアルを作成する理由はImage以外を変更されないようにするため
    • ボードが複数ある場合このようにしておけばボードの数だけ、マテリアルインスタンスを作成するだけで良くなる
  2. マスターマテリアルからマテリアルインスタンスを作成(Boards_Instance_1としている)
    • 最初のボードの為、最初のボードである UE_01 という名前のボードを設定
    • Opacity を 1 にして Imageが完全に見えている状態にしている
  3. 整理の為、Boards_Instances というフォルダを作成しマテリアルインスタンスを入れておく
  4. ボードの数だけ複製し、Imageを適切に変えていく
マテリアルインスタンスをカメラのビューポートに配置する
  1. カメラを選択して詳細パネルの Rendering Features の Post Process Materials の Array の + ボタンをボードの数だけ押して作成する

  1. なしの所をクリックしてアセットリファレンスにしたあとで、その部分にマテリアルインスタンスを1から順番にドラッグしていく。

  1. 値をすべて 0 にする
確認する

  1. カメラをパイロットにする

    • 下図の赤枠の箇所が有効になっている事。(なっていなければカメラのビューポートがビューポート一面に表示されない)
  2. ビューポートから見えている景色と見比べたいボードの数値を1にしたりする

ポーズ処理

Unreal Engine のアニメーション エディタを使用して、ストーリーボードで必要なすべてのポーズを作成し、これらをアニメーション アセットとして保存する方法を紹介します。

  1. ベースとなるポーズを開く
  2. 準備する
    • 左パネルにはスケルトンが表示されている
    • ポーズを変えるキャラクターのフレームをボードと同じような角度にする
  3. 左パネルから選択し回転させながらボードと同じような姿勢にする
    • 回転のみ行い、移動、縮小などは行わない
  4. ポーズを保存するために、現在のポーズからアセットを作成する
  5. あとはポーズが必要なボードの分同じ作業を繰り返す。
    • ベースとなるポーズから始める事

デジタルアクタのブロッキング

シーケンサでは、アクタはそれぞれのカメラ設定ごとに、ポーズの切り替えが設定されたキーフレームを含む環境にブロッキングされます。

🤔ここではシーケンサを使って実際にボードの内容を再現するようです。しかしサンプルファイルには最初からボードを再現したシーケンサは完成していたので、理解するためにシーケンサを作りました。その手順を簡単に纏めています。

なおブロッキングとはアクターなどの配置を決めることを指すようです。

  1. P_B_Shotviz_Bマップを開く
  2. 右クリック → アニメーション → レベルシーケンス を作成
  3. 名前: ShotViz_Board_3minen
  4. 保存先: ContentPhysicsBasedShotvizCineShots
  5. Belica(女性)とMurdock(男性)をシーケンサーに追加

  1. 2人に可視性を設定するためのトラックを追加
  2. 2人にフレーム0でトランスフォームの + を押しキーを作成する
  3. 自動キーを有効にする
    • これでアクターの配置を変えた場合、自動的にキーを作成してくれる
  4. ボードを参考に2人の位置を移動させる
  5. 場所が決まったら意図せず修正しないよう2人のトランスフォームのキーをConstant(定数)にしておく
  6. アクターの動きを変えるために、アニメーションから対応するアセットを選択する
    • これはボード3の内容のため、対応する Murdock_Board_3を設定(Belicaの場合は Belica_Board_3)

  1. 2人のアニメーションを最後のフレームまでドラッグ
  2. キャラクターの位置や回転に微調整が必要であれば0フレーム目で行う(自動キーフレームのため即座に適用される)

用語メモ

フレーミングframing

写真や絵画の制作において、フレームの位置、大きさなどを検討、決定すること(frame)。Wikipedia

ブロッキング Blocking

一度に複数のカメラを使用するテレビの撮影現場の場合、映画のカット割りに相当するものがスイッチングによるカメラ割りである。このカメラ割り自体、また、それを決める作業をブロッキングと呼ぶ

英語メモ

replicate レプリカを作る

タイトルとURLをコピーしました