1.3K Views
November 05, 17
スライド概要
2017年11月5日に行われた「CGWORLD2017 クリエイティブカンファレンス」
のセッション資料です。
CG映像屋目線のUE4入門的な内容になっています。
セッションに向けて作成したテスト動画はこちら(https://vimeo.com/241226526)
使用ツール:3dsMax2017, UE4.17
Jet Studio Inc.という3DCGの会社で雑用やってます。
3dsMax × UE4 ~映像制作におけるリアルタイムエンジンの活用~ 株式会社ジェットスタジオ チーフディレクター 赤崎弘幸 © 2017 Jet Studio Inc. All Rights Reserved.
自己紹介 赤崎弘幸 (29) ジェットスタジオ入社(2010~) ディレクター(2013~) チーフディレクター(最近~) ディレクション業務、社内ワークフロー管理、R&D、とかいろいろ。 AREA JAPANコラム執筆、CEDEC2017登壇、CGWORLD特集記事、 書籍監修とかいろいろ。 © 2017 Jet Studio Inc. All Rights Reserved. Twitter : @akasaki1211
自己紹介 株式会社ジェットスタジオ 2001年設立のCGプロダクション ゲーム、パチンコ、映画、PVなど様々な3DCG映像を制作 本社とベトナム支社合わせて80~90名ほど © 2017 Jet Studio Inc. All Rights Reserved.
このセッションから何がわかるの? まずは作成した動画をご覧ください。 © 2017 Jet Studio Inc. All Rights Reserved.
このセッションから何がわかるの? 映像制作を目的とした… UE4移行のための3dsMaxデータ作成方法 シーケンサーの簡単な使用方法(3dsMaxカメラのインポート) © 2017 Jet Studio Inc. All Rights Reserved.
アジェンダ 3dsMax編 UE4編 UE4へのインポート 本日のキャラクターについて モデルの最適化 キャラ、プロップ(スケルタルメッシュ) テクスチャの再構築 アニメーション 動かないもの(スタティックメッシュ) UE4のためキャラクター構成 プロップなどのデータ構成 カメラのアニメーション 各種データの出力 サンプルコンテンツの活用 シーケンサー 各種トラック作成(カメラのインポート) クロスフェード ライティング ポストプロセス 動画の出力 まとめ © 2017 Jet Studio Inc. All Rights Reserved.
3dsMax編 © 2017 Jet Studio Inc. All Rights Reserved.
本日使用するキャラクターについて AREA JAPANコラム 『CharacterArpeggio~3ds Max 2017 キャラクター作成術~』 にて作成したキャラクター 連載時はV-Rayでのプリレンダー仕様で制作していた。 UE4出力用に一部最適化する必要があった。 © 2017 Jet Studio Inc. All Rights Reserved.
モデルの最適化 プリレンダー仕様では全てターボスムーズ入れてたけど、さすがに重 そうなので外す。 適宜ポリゴン、ノーマルマップ調整。 (映像出力目的なら軽量化よりクオリティ優先でも良い。) DCCツール依存のプラグイン部分を最適化。 (HAIRFARM ⇒ 板ポリ化 とか) © 2017 Jet Studio Inc. All Rights Reserved.
モデルの最適化 © 2017 Jet Studio Inc. All Rights Reserved.
モデルの最適化 © 2017 Jet Studio Inc. All Rights Reserved.
テクスチャの再構築 V-Ray仕様で作成していたテクスチャをUE4のマテリアル仕様に合わせて再構築 例)V-Ray ⇒ UE4 Diffuse ⇒ そのままBaseColorに Reflection ⇒ Specular 金属/非金属マスク ⇒ Metalic rGlossiness ⇒ 反転してRoughnessに ノーマルマップ ⇒ そのままNormalに ※無くてもいいかも ※ 特殊なマテリアル(髪や眼球)は必要に応じて追加のマップを作成。 © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 Bipedベースのリグからスケルタルメッシュに変換する。 スケルタルメッシュ:ボーンでスキニングされたメッシュ+モーファー © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 スケルタルメッシュ移行時(FBX出力)の仕様まとめ Boneはもちろん使用可能。 Point HelperなんかもDummyに変換されるのでボーン代わりに使用可能。 Bipedも使用可能。FBX出力時にDummyに変換される。親子階層にBiped独特の癖がある。 Biped の Scale SubAnim は Dummyのスケールアニメーションとして出力可能だが、出力後の子階層にシアー が入るのでやめておいた方がいい。 3dsMaxボーン特有のスケールっぽい動きするやつはニセモノ。 リンク(親子付け)されたメッシュは自動的にスケルタルメッシュに変換されるが、勝手にJointが増えて扱い にくいので非推奨。 『選択を書き出し』では選択したものに加え、上位階層も全て出力される。(子階層以下は無視) 『選択を書き出し』で選択したメッシュのスキンモディファイヤに関連付けられたボーンは、選択していなくて も強制的に出力される。 ひとつのスキンに対して関連付けされているジョイント群(スケルトン)は同一階層内にいなければならない。 (※MultipleRootエラー) モディファイヤは編集可能オブジェクト(Modified_Object)が入れ子になっていると下の階層が無視される。 モーファーのターゲット側を変形させるやつ禁止。 © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 ①ゴリ押し型 とりあえずバラけているジョイント階層を全て同一階層に納める。親子付けメッシュもそのまま。 データはゴミだらけになる。 ②リグ分離型 Biped+追加ボーン+リグ含め同一階層内で整理。 スケルタルメッシュに不要なリグ部分がスキン用ボーンの中間階層に位置しないように注意。 親子付け系はスキン100%に置き換え。 パッと見複雑。 ③完全分離型 スキニング用ボーンとリグ階層を完全に分離して構築。Bipedはコントロールリグとみなす。 後付けでは手間がはんぱない。 見た目はわかりやすい。 ④リグとかもうやめる型 全てジオメトリキャッシュにしてしまう。 フレーム補完注意 © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 ①ゴリ押し型 とりあえずバラけているジョイント階層を全て同一階層に納める。親子付けメッシュもそのまま。 データはゴミだらけになる。 ②リグ分離型 Biped+追加ボーン+リグ含め同一階層内で整理。 スケルタルメッシュに不要なリグ部分がスキン用ボーンの中間階層に位置しないように注意。 親子付け系はスキン100%に置き換え。 パッと見複雑。 ③完全分離型 スキニング用ボーンとリグ階層を完全に分離して構築。Bipedはコントロールリグとみなす。 後付けでは手間がはんぱない。 見た目はわかりやすい。 ④リグとかもうやめる型 全てジオメトリキャッシュ(Alembic)にしてしまう。 フレーム補完注意 © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 階層構造 © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 階層構造 © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 こういうのはダメ © 2017 Jet Studio Inc. All Rights Reserved.
UE4のためのキャラクター構成 こういうのはダメ © 2017 Jet Studio Inc. All Rights Reserved.
プロップなどのデータ構成 モデルに直接アニメーションしてしまっても同一階層内に収めれば強引 にスケルタルメッシュ化可能。 © 2017 Jet Studio Inc. All Rights Reserved.
プロップなどのデータ構成 モデルに直接アニメーションしてしまっても同一階層内に収めれば強引 にスケルタルメッシュ化可能。 © 2017 Jet Studio Inc. All Rights Reserved.
カメラのアニメーション カメラを親子階層下に置いてしまうとFBX出力時に階層ごと出力されて しまうため、カメラはワールドに配置。 ⇒ カメラに直接アニメーションをつける or コンストレイント制御 © 2017 Jet Studio Inc. All Rights Reserved.
各種データの出力 キャラ/プロップ(スケルタルメッシュ) 1. 必要なボーン全てとメッシュを選択 2. 『選択を書き出し』でFBXエクスポート © 2017 Jet Studio Inc. All Rights Reserved.
各種データの出力 キャラ/プロップ(アニメーション) 1. 必要なボーン全てとメッシュを選択 2. 『選択を書き出し』でFBXエクスポート © 2017 Jet Studio Inc. All Rights Reserved.
各種データの出力 カメラ 1. カメラだけを選択 2. 『選択を書き出し』で FBXエクスポート © 2017 Jet Studio Inc. All Rights Reserved.
各種データの出力 動かないもの(スタティックメッシュ) 1. メッシュを選択 2. 『選択を書き出し』でFBXエクスポート © 2017 Jet Studio Inc. All Rights Reserved.
UE4編 © 2017 Jet Studio Inc. All Rights Reserved.
UE4へのインポート キャラ/プロップ(スケルタルメッシュ) © 2017 Jet Studio Inc. All Rights Reserved.
UE4へのインポート キャラ/プロップ(スケルタルメッシュ) © 2017 Jet Studio Inc. All Rights Reserved.
UE4へのインポート キャラ/プロップ(アニメーション) © 2017 Jet Studio Inc. All Rights Reserved.
UE4へのインポート 動かないもの(スタティックメッシュ) © 2017 Jet Studio Inc. All Rights Reserved.
サンプルコンテンツの活用 © 2017 Jet Studio Inc. All Rights Reserved.
サンプルコンテンツの活用 Case1.髪のマテリアル サンプルのマテリアルから必要な部分だけ頂いてくる。 © 2017 Jet Studio Inc. All Rights Reserved.
サンプルコンテンツの活用 Case1.髪のマテリアル サンプルのマテリアルから必要な部分だけ頂いてくる。 © 2017 Jet Studio Inc. All Rights Reserved.
サンプルコンテンツの活用 Case2.眼球のマテリアル サンプルのマテリアルインスタンスをそのまま使ってしまう © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー キャラクターのトラック作成 © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー カメラのインポート 1. CameraCutsトラックを作成 2. CineCameraActor作成 3. 右クリックからImport © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー カメラのインポート 1. CameraCutsトラックを作成 2. CineCameraActor作成 3. 右クリックからImport と言いたいところですが・・・ © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー カメラのインポート 1. CameraCutsトラックを作成 2. CineCameraActor作成 3. 右クリックからImport と言いたいところですが・・・ 3dsMaxから出力されたFBXはFocalLengthが取得できない!? (FOVで記録されているためか) © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー 画角のアニメーションがある場合の解決策① ~Mayaを経由する~ 1. MayaにFBXインポート&エクスポート。 2. CineCameraActorにFBXインポート(TransformとFocalLengthの キーどちらも来る) © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー 画角のアニメーションがある場合の解決策② ~Matineeを変換する~ 1. 通常のCameraActor(青いカメラ)を作成 2. シーケンサーのCamera Cuts Trackに追加 3. カメラトラックにFBXインポート(Transformのキーだけ来る) 4. MatineeActor作成 5. 同じカメラFBXをMatineeにインポート 6. MatineeActorをConvert to Level Sequence 7. 6. のLevelSequenceのFOVトラックをコピー 8. 2. のカメラトラックにCameraCompornentを追加しペースト 参考:Importing FBX camera in Sequencer - UE4 AnswerHub © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー クロスフェードのやり方 SceneCapture2Dでキャプチャした画面をポストプロセスマテリアル で上乗せすることで可能。 参考:[Mini Tutorial] Camera Crossfade - Unreal Engine Forums 上記のMatineeでのチュートリアルを参考に作成し、シーケンサーにCameraActor, SceneCapture2D, Material Parameter Collection Trackを追加すればOK。 © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー © 2017 Jet Studio Inc. All Rights Reserved.
シーケンサー 画像のオーバーライドくらいならもっとシンプル ポストプロセスマテリアルに画像をはめるだけ。 © 2017 Jet Studio Inc. All Rights Reserved.
エフェクト Cascadeで作成 © 2017 Jet Studio Inc. All Rights Reserved.
ライティング 動くものに対するライティングはStationary又は Movableで。※数に制限があるので注意 背景用のライトであればStatic可。※スケルタルメッシュ に影が落ちない。ビルド必須。 サイズや減衰、影の設定。 最後にProductionでライトビルド。 © 2017 Jet Studio Inc. All Rights Reserved.
ライティング © 2017 Jet Studio Inc. All Rights Reserved.
ポストプロセス カメラ単体又は空間に対して適用可能。 DOF、モーションブラー、カラーグレーディングなど様々なエフェク トをリアルタイムに調整可能。 © 2017 Jet Studio Inc. All Rights Reserved.
ポストプロセス Color Grading LUT を使ったカラーグレーディングが便利。 参考:色対応表 (LUT) によるカラー グレーディング © 2017 Jet Studio Inc. All Rights Reserved.
ポストプロセス © 2017 Jet Studio Inc. All Rights Reserved.
動画の出力 シーケンサーから出力可能。 レンダーパス出力も出来るが、UE4で完結さ せていいと思う。 © 2017 Jet Studio Inc. All Rights Reserved.
まとめ © 2017 Jet Studio Inc. All Rights Reserved.
まとめ © 2017 Jet Studio Inc. All Rights Reserved.
まとめ レンダリング待ちが無いのでライティングや絵作りが楽。 レンダリング時間を気にして尺をケチるという妥協が無い幸せ。 3dsMaxとAEで実質2回レンダリングしていたのが1回に。 仕様・制約の把握が大変。 仕込みが大変。 プラグインなどでゴリ押しがしにくい。 © 2017 Jet Studio Inc. All Rights Reserved.
ご清聴ありがとうございました (質疑応答) © 2017 Jet Studio Inc. All Rights Reserved.