3dsmax+ue4 ~映像制作におけるリアルタイムエンジンの活用~

58
3dsMax × UE4 ~映像制作におけるリアルタイムエンジンの活用~ 株式会社ジェットスタジオ チーフディレクター 赤崎弘幸 © 2017 Jet Studio Inc. All Rights Reserved.

Upload: hiroyuki-akasaki

Post on 21-Jan-2018

7.632 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

3dsMax × UE4~映像制作におけるリアルタイムエンジンの活用~

株式会社ジェットスタジオ

チーフディレクター 赤崎弘幸

© 2017 Jet Studio Inc. All Rights Reserved.

Page 2: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

自己紹介

赤崎弘幸 (29) Twitter : @akasaki1211

ジェットスタジオ入社(2010~) ディレクター(2013~)チーフディレクター(最近~)

ディレクション業務、社内ワークフロー管理、R&D、とかいろいろ。

AREA JAPANコラム執筆、CEDEC2017登壇、CGWORLD特集記事、書籍監修とかいろいろ。

© 2017 Jet Studio Inc. All Rights Reserved.

Page 3: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

自己紹介

株式会社ジェットスタジオ

2001年設立のCGプロダクション

ゲーム、パチンコ、映画、PVなど様々な3DCG映像を制作

本社とベトナム支社合わせて80~90名ほど

© 2017 Jet Studio Inc. All Rights Reserved.

Page 4: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

このセッションから何がわかるの?

© 2017 Jet Studio Inc. All Rights Reserved.

まずは作成した動画をご覧ください。

Page 5: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

このセッションから何がわかるの?

© 2017 Jet Studio Inc. All Rights Reserved.

映像制作を目的とした…

UE4移行のための3dsMaxデータ作成方法

シーケンサーの簡単な使用方法(3dsMaxカメラのインポート)

Page 6: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

アジェンダ

3dsMax編

本日のキャラクターについて

モデルの最適化

テクスチャの再構築

UE4のためキャラクター構成

プロップなどのデータ構成

カメラのアニメーション

各種データの出力

© 2017 Jet Studio Inc. All Rights Reserved.

UE4編

UE4へのインポート

キャラ、プロップ(スケルタルメッシュ)

アニメーション

動かないもの(スタティックメッシュ)

サンプルコンテンツの活用

シーケンサー

各種トラック作成(カメラのインポート)

クロスフェード

ライティング

ポストプロセス

動画の出力

まとめ

Page 7: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

3dsMax編

© 2017 Jet Studio Inc. All Rights Reserved.

Page 8: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

本日使用するキャラクターについて

© 2017 Jet Studio Inc. All Rights Reserved.

AREA JAPANコラム

『CharacterArpeggio~3ds Max 2017 キャラクター作成術~』

にて作成したキャラクター

連載時はV-Rayでのプリレンダー仕様で制作していた。

UE4出力用に一部最適化する必要があった。

Page 9: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

モデルの最適化

© 2017 Jet Studio Inc. All Rights Reserved.

プリレンダー仕様では全てターボスムーズ入れてたけど、さすがに重そうなので外す。

適宜ポリゴン、ノーマルマップ調整。(映像出力目的なら軽量化よりクオリティ優先でも良い。)

DCCツール依存のプラグイン部分を最適化。(HAIRFARM ⇒板ポリ化とか)

Page 10: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

モデルの最適化

© 2017 Jet Studio Inc. All Rights Reserved.

Page 11: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

モデルの最適化

© 2017 Jet Studio Inc. All Rights Reserved.

Page 12: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

テクスチャの再構築

© 2017 Jet Studio Inc. All Rights Reserved.

V-Ray仕様で作成していたテクスチャをUE4のマテリアル仕様に合わせて再構築

例)V-Ray ⇒ UE4

Diffuse ⇒ そのままBaseColorに

Reflection ⇒ Specular ※無くてもいいかも

金属/非金属マスク ⇒ Metalic

rGlossiness ⇒ 反転してRoughnessに

ノーマルマップ ⇒ そのままNormalに

※特殊なマテリアル(髪や眼球)は必要に応じて追加のマップを作成。

Page 13: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

Bipedベースのリグからスケルタルメッシュに変換する。

スケルタルメッシュ:ボーンでスキニングされたメッシュ+モーファー

Page 14: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

スケルタルメッシュ移行時(FBX出力)の仕様まとめ

Boneはもちろん使用可能。

Point HelperなんかもDummyに変換されるのでボーン代わりに使用可能。

Bipedも使用可能。FBX出力時にDummyに変換される。親子階層にBiped独特の癖がある。

Bipedの Scale SubAnimは Dummyのスケールアニメーションとして出力可能だが、出力後の子階層にシアーが入るのでやめておいた方がいい。

3dsMaxボーン特有のスケールっぽい動きするやつはニセモノ。

リンク(親子付け)されたメッシュは自動的にスケルタルメッシュに変換されるが、勝手にJointが増えて扱いにくいので非推奨。

『選択を書き出し』では選択したものに加え、上位階層も全て出力される。(子階層以下は無視)

『選択を書き出し』で選択したメッシュのスキンモディファイヤに関連付けられたボーンは、選択していなくても強制的に出力される。

ひとつのスキンに対して関連付けされているジョイント群(スケルトン)は同一階層内にいなければならない。(※MultipleRootエラー)

モディファイヤは編集可能オブジェクト(Modified_Object)が入れ子になっていると下の階層が無視される。

モーファーのターゲット側を変形させるやつ禁止。

Page 15: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

①ゴリ押し型

とりあえずバラけているジョイント階層を全て同一階層に納める。親子付けメッシュもそのまま。

データはゴミだらけになる。

②リグ分離型

Biped+追加ボーン+リグ含め同一階層内で整理。

スケルタルメッシュに不要なリグ部分がスキン用ボーンの中間階層に位置しないように注意。

親子付け系はスキン100%に置き換え。

パッと見複雑。

③完全分離型

スキニング用ボーンとリグ階層を完全に分離して構築。Bipedはコントロールリグとみなす。

後付けでは手間がはんぱない。

見た目はわかりやすい。

④リグとかもうやめる型

全てジオメトリキャッシュにしてしまう。

フレーム補完注意

Page 16: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

①ゴリ押し型

とりあえずバラけているジョイント階層を全て同一階層に納める。親子付けメッシュもそのまま。

データはゴミだらけになる。

②リグ分離型

Biped+追加ボーン+リグ含め同一階層内で整理。

スケルタルメッシュに不要なリグ部分がスキン用ボーンの中間階層に位置しないように注意。

親子付け系はスキン100%に置き換え。

パッと見複雑。

③完全分離型

スキニング用ボーンとリグ階層を完全に分離して構築。Bipedはコントロールリグとみなす。

後付けでは手間がはんぱない。

見た目はわかりやすい。

④リグとかもうやめる型

全てジオメトリキャッシュ(Alembic)にしてしまう。

フレーム補完注意

Page 17: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

Page 18: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

階層構造

Page 19: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

階層構造

Page 20: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

こういうのはダメ

Page 21: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4のためのキャラクター構成

© 2017 Jet Studio Inc. All Rights Reserved.

こういうのはダメ

Page 22: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

プロップなどのデータ構成

© 2017 Jet Studio Inc. All Rights Reserved.

モデルに直接アニメーションしてしまっても同一階層内に収めれば強引にスケルタルメッシュ化可能。

Page 23: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

モデルに直接アニメーションしてしまっても同一階層内に収めれば強引にスケルタルメッシュ化可能。

プロップなどのデータ構成

© 2017 Jet Studio Inc. All Rights Reserved.

Page 24: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

カメラのアニメーション

© 2017 Jet Studio Inc. All Rights Reserved.

カメラを親子階層下に置いてしまうとFBX出力時に階層ごと出力されてしまうため、カメラはワールドに配置。

⇒カメラに直接アニメーションをつける orコンストレイント制御

Page 25: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

各種データの出力

キャラ/プロップ(スケルタルメッシュ)

1. 必要なボーン全てとメッシュを選択

2. 『選択を書き出し』でFBXエクスポート

© 2017 Jet Studio Inc. All Rights Reserved.

Page 26: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

各種データの出力

キャラ/プロップ(アニメーション)

1. 必要なボーン全てとメッシュを選択

2. 『選択を書き出し』でFBXエクスポート

© 2017 Jet Studio Inc. All Rights Reserved.

Page 27: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

各種データの出力

カメラ

1. カメラだけを選択

2. 『選択を書き出し』でFBXエクスポート

© 2017 Jet Studio Inc. All Rights Reserved.

Page 28: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

各種データの出力

動かないもの(スタティックメッシュ)

1. メッシュを選択

2. 『選択を書き出し』でFBXエクスポート

© 2017 Jet Studio Inc. All Rights Reserved.

Page 29: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4編

© 2017 Jet Studio Inc. All Rights Reserved.

Page 30: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4へのインポート

© 2017 Jet Studio Inc. All Rights Reserved.

キャラ/プロップ(スケルタルメッシュ)

Page 31: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4へのインポート

© 2017 Jet Studio Inc. All Rights Reserved.

キャラ/プロップ(スケルタルメッシュ)

Page 32: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

キャラ/プロップ(アニメーション)

UE4へのインポート

© 2017 Jet Studio Inc. All Rights Reserved.

Page 33: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

UE4へのインポート

© 2017 Jet Studio Inc. All Rights Reserved.

動かないもの(スタティックメッシュ)

Page 34: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

サンプルコンテンツの活用

© 2017 Jet Studio Inc. All Rights Reserved.

Page 35: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

サンプルコンテンツの活用

© 2017 Jet Studio Inc. All Rights Reserved.

Case1.髪のマテリアル

サンプルのマテリアルから必要な部分だけ頂いてくる。

Page 36: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

サンプルコンテンツの活用

© 2017 Jet Studio Inc. All Rights Reserved.

Case1.髪のマテリアル

サンプルのマテリアルから必要な部分だけ頂いてくる。

Page 37: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

サンプルコンテンツの活用

© 2017 Jet Studio Inc. All Rights Reserved.

Case2.眼球のマテリアル

サンプルのマテリアルインスタンスをそのまま使ってしまう

Page 38: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

キャラクターのトラック作成

Page 39: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

カメラのインポート

1. CameraCutsトラックを作成

2. CineCameraActor作成

3. 右クリックからImport

Page 40: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

カメラのインポート

1. CameraCutsトラックを作成

2. CineCameraActor作成

3. 右クリックからImport

と言いたいところですが・・・

Page 41: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

カメラのインポート

1. CameraCutsトラックを作成

2. CineCameraActor作成

3. 右クリックからImport

と言いたいところですが・・・

3dsMaxから出力されたFBXはFocalLengthが取得できない!?

(FOVで記録されているためか)

Page 42: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

画角のアニメーションがある場合の解決策①~Mayaを経由する~

1. MayaにFBXインポート&エクスポート。

2. CineCameraActorにFBXインポート(TransformとFocalLengthのキーどちらも来る)

Page 43: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 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

Page 44: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

Page 45: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

クロスフェードのやり方

SceneCapture2Dでキャプチャした画面をポストプロセスマテリアルで上乗せすることで可能。

参考:[Mini Tutorial] Camera Crossfade - Unreal Engine Forums

上記のMatineeでのチュートリアルを参考に作成し、シーケンサーにCameraActor, SceneCapture2D, Material Parameter Collection Trackを追加すればOK。

Page 46: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

Page 47: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

シーケンサー

© 2017 Jet Studio Inc. All Rights Reserved.

画像のオーバーライドくらいならもっとシンプル

ポストプロセスマテリアルに画像をはめるだけ。

Page 48: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

エフェクト

© 2017 Jet Studio Inc. All Rights Reserved.

Cascadeで作成

Page 49: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

ライティング

© 2017 Jet Studio Inc. All Rights Reserved.

動くものに対するライティングはStationary又はMovableで。※数に制限があるので注意

背景用のライトであればStatic可。※スケルタルメッシュに影が落ちない。ビルド必須。

サイズや減衰、影の設定。

最後にProductionでライトビルド。

Page 50: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

ライティング

© 2017 Jet Studio Inc. All Rights Reserved.

Page 51: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

ポストプロセス

© 2017 Jet Studio Inc. All Rights Reserved.

カメラ単体又は空間に対して適用可能。

DOF、モーションブラー、カラーグレーディングなど様々なエフェクトをリアルタイムに調整可能。

Page 52: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

ポストプロセス

© 2017 Jet Studio Inc. All Rights Reserved.

Color Grading LUTを使ったカラーグレーディングが便利。

参考:色対応表 (LUT) によるカラーグレーディング

Page 53: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

ポストプロセス

© 2017 Jet Studio Inc. All Rights Reserved.

Page 54: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

動画の出力

© 2017 Jet Studio Inc. All Rights Reserved.

シーケンサーから出力可能。

レンダーパス出力も出来るが、UE4で完結させていいと思う。

Page 55: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

まとめ

© 2017 Jet Studio Inc. All Rights Reserved.

Page 56: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

まとめ

© 2017 Jet Studio Inc. All Rights Reserved.

Page 57: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

まとめ

© 2017 Jet Studio Inc. All Rights Reserved.

レンダリング待ちが無いのでライティングや絵作りが楽。

レンダリング時間を気にして尺をケチるという妥協が無い幸せ。

3dsMaxとAEで実質2回レンダリングしていたのが1回に。

仕様・制約の把握が大変。

仕込みが大変。

プラグインなどでゴリ押しがしにくい。

Page 58: 3dsMax+UE4 ~映像制作におけるリアルタイムエンジンの活用~

ご清聴ありがとうございました(質疑応答)

© 2017 Jet Studio Inc. All Rights Reserved.