47
UE4を使った クロスシミュレーションと、 ハイエンド・モバイルゲーム制作 の奥義を伝授! Epic Games Korea Hyojong Shin

UE4を使った クロスシミュレーションと、 ハイエンド・モバイルゲーム制作の奥義を伝授!

Embed Size (px)

Citation preview

UE4を使った クロスシミュレーションと、 ハイエンド・モバイルゲーム制作

の奥義を伝授!

Epic Games Korea

Hyojong Shin

目次

• UE4クロス

–パイプライン

–クロスに使われるメッシュ

–オプション

– Tips

• UE4モバイル

–モバイル・レンダリング

–最適化

– Project HITの紹介

UE4 クロス

UE4 Clothing

• 主に衣服、または髪の毛

–クロスのサンプル

–ヘアのサンプル

• APEX Clothing Plug-in で 書き出したApexファイルが必要

• Maya/3DS Max Plug-in Download page

https://developer.nvidia.com/gameworksdownload

APEX Plug-in

パイプライン

• 他のアセットとは違うコンセプト

– Skeletal Mesh の一部

–拡張性のある使用が可能

APEX Plug-in

.APX

.FBX

Persona Content Browser

UE4 3ds Max

Maya

パイプライン

• クロス・マッピング試演

Cloth physics properties

クロスに使われるメッシュ

• Physical Mesh

• Graphical Mesh

Physical Mesh

• シミュレーションメッシュ

Graphical mesh

• Physical Mesh のシミュレーション結果を用いて補間 ムービー

Tessellation

• 4.9からテセレーションが可能

Sub-meshes

• 複数のマテリアルを一つのクロスで シミュレーション

例 ) ジャケットの腕は革, ボタンはキラキラ?

LODs

• LODを含んだApexファイル

Options in SkelMeshComp

コリジョン

モーフターゲット

テレポート

クロス・ブレンド

コリジョン

• Physics Assetとは別にAPEX Plug-inで設定

• コリジョンの種類

–キャラクタとのコリジョン

–背景とのコリジョン

–背景に配置されている クロスとのコリジョン

–キャラクタにアタッチ されている オブジェクトとのコリジョン

コリジョンに関する制限

• Physics Assetとは別にAPEX Plug-inで設定

• 2種類

–カプセル/コンベックス

• 最大値

–カプセル16個

–コンベックス32面

• 背景のクロスとの 衝突用のコリジョン だけのAPEXファイル もインポート可能

Collide with Environment オプション

• Ragdoll with Clothing –ムービー

Collide with Environment オプション

• 背景に配置されているクロスとの コリジョン

–ムービー

Local Space Simulation • 比較的落ち着いた動き

–派手な動きはできないので注意

• フリーズした時にはオンにしないとクロスがキャラクタを付いて行かない

– void FreezeClothSection(bool bFreeze);

Cloth Morph Target

• クロスのモーフ ターゲット

• ムービー

• 注意点

–リアルタイムでなめらかに変形できない

–キャラクタのカスタマイズ用途

• キャラクタが瞬間移動すると クロスがぐちゃぐちゃ

–テレポートで解決

• 距離と回転

– 1フレームで どれだけ動いたか

テレポート

Cloth blend Weight

• シミュレーションとキーフレームとのブレンド

–ムービー

• シムからアニメーションに遷移または逆

–カーブでのコントロールも可能

• クロスがコントロール不可能なシチュエーション

Tips

• Particles on Cloth –クロスメッシュの表面でもパーティクル生成可能

• Performance Tip –固定頂点が多い場合にはシミュレーションパーツと分離し、なるべく動くところだけクロスにする

Tips

• Visualization

– Show menus in Persona

まとめ

• APEX Plug-in で APEXファイルを書き出し、ペルソナで APEXファイルを追加

• Sub-mesh を使えば複数のマテリアルも 使用可能

• Graphical Meshでシミュレーションの負荷なく、ビジュアル・クォリティー向上

• LODでシミュレーションコストダウン

• クロス用コリジョンはAPEX Plug-in で 設定

• 瞬間移動時にはテレポートオプション

UE4 モバイル

Soul Dungeon

• モバイルゲーム サンプル

–ムービー

• 1ヶ月プロジェクト • 実質2週間程度

• ゲームプレイ

–プログラマ 1名、アーティスト 1名

• バックエンド:パッチ、ランキングなど

–プログラマ 1名

Rendering on Mobile

• Forward Rendering

• Stationary Light –一つ使用可能

• Post Processing

– Film / Bloom/ Exposure / Motion blur / DOF

• Mobile HDR – 3Dゲームではオンにするのをお勧め

モバイル最適化

• スピード最適化

– Precomputed Visibility

– Cull distance Volume

– Actor Merging

– Shader Complexity

– Customized UVs

• メモリ最適化

– Normal Mapsを効率的に

– Actor Lightmap Resolution

– Texture LOD bias

Precomputed Visibility World Settings

Precomputed visibility Volume

Cull distance Volume

• DrawCallを減らす

Actor Merging • DrawCallを減らす

エディタの環境設定→実験的

Actor Merging

Unified

Lightmap

Simplygon

Collect Materials

Unify Meshes

Unify Lightmaps

Simplygonは別途ライセンスが必要です。

LODs

Base

LOD

LOD

Level 1

LOD

Level 2

Shader Complexity

• Shader Instructions最適化

Customized UVs

Pixel Shader Vertex

Shader

ノーマルマップ2枚を1枚に

• テクスチャーを効率的に使用

• ルマップ2枚を1枚に

Actor Lightmap Resolution

• メモリ最適化

Texture LOD bias

• メモリ節約

Tips

• Mobile Device Profiling

– “stat startfile” / “stat stopfile”

• Reflection Capture Actor

遠距離用 Reflection

Capture Actor 配置 近距離用 Reflection

Capture Actor 配置

Tips

• Mobile HDR off –基本的に3Dゲームではお勧めしない

–本来の意図は2Dゲーム用

–ライト及びポストプロセスの保証ができない

–パフォーマンス向上

–オフにした例

• Gun Jack

• GearVR用

Project HIT

• ムービー

• 背景はFully Roughness

• 一画面に100,000-150,000ポリゴン

• 一画面に8-12キャラクタ出演

–ボーン数

• プレイヤー キャラクタ: 67-75個

• モンスターキャラクタ: 40-60 個

• Galaxy Note 2で30fps

新しくアップデートされた機能

• 4.9で入った機能

• ダイナミック・ライト

–ムービー

• デカル

Soft Bone

• ライセンシーからの要望

–モバイルで使える軽い物理がほしい

–物理的に動いてもちゃんと元の形に戻ってほしい ⇒ 次のバージョンで入る予定

まとめ

• スピード最適化

– Precomputed Visibility

– Cull distance Volume

– Actor Merging

– Shader Complexity

– Customized UVs

• メモリ最適化

– Normal Mapsを効率的に

– Actor Lightmap Resolution

– Texture LOD bias

ご清聴ありがとうございました