RCP5series - ロボシリンダ 購入|電動シリンダ オン …¼ˆPNP)仕様 パルス列(PNP)仕様 DeviceNet接続仕様 CC-Link接続仕様 PROFIBUS-DP接続仕様
マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking:...
-
Upload
-epic-games-japan -
Category
Engineering
-
view
5.386 -
download
9
Transcript of マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking:...
![Page 1: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/1.jpg)
UE4Material Management
Deep Dive
マジシャンズデッド ポストモーテム
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 2: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/2.jpg)
二部構成
デザイナー編
プログラマー編
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 3: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/3.jpg)
デザイナー編
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 4: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/4.jpg)
株式会社バイキング
リードステージデザイナー
なり あい しん じ
成相真治
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
協力リードキャラクターデザイナー 鈴木寿弥リードエフェクトデザイナー 岩崎武徳
![Page 5: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/5.jpg)
自己紹介
マジシャンズデッドでの役割
リードステージデザイナーとして ・レベルモデルの作成 ・アートイメージの作成 ・リソース仕様の作成 ・マテリアル作成と管理 ・モデルデータ作成 ・スケジュール管理
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 6: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/6.jpg)
デザイナー編の内容
・マジシャンズデッドの紹介
・開発開始時の状態とスキル習得
・マテリアルファンクションの利用方法
・マテリアル構造
・ワークフローの変化
・マテリアルの命名規則
マジシャンズデッド開発における開発事例紹介
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 7: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/7.jpg)
マジシャンズデッドの紹介
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 8: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/8.jpg)
「マジシャンズデッド」って何?
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 9: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/9.jpg)
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 10: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/10.jpg)
簡単に言えば、
アーケード用の格闘ゲームです。
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 11: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/11.jpg)
開発開始時の状態とスキル習得
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 12: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/12.jpg)
マスターマテリアル制作者
基本的に各セクションで使用するマテリアルは
各セクションのリードデザイナーが作成する。
(必要な部分をプログラマーサポート)
デザイナースキル
UE 未経験。
従来の開発環境での開発経験のみ。
(用意された設定を調整するレベル)Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
開発開始時の状態
![Page 13: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/13.jpg)
参考
・ UE4 マニュアル
・書籍
「 Unreal Engine 4 マテリアルデザイン入門」
「見てわかる UnrealEngine4 ゲーム制作超入門」
・優良 Web サイト様
技術サポート
・ヒストリア様
・ Epic Games 様Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
スキル習得
![Page 14: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/14.jpg)
マテリアルファンクションの利用方法
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 15: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/15.jpg)
マテリアルファンクション( MF )とは?
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
マテリアル関数
複数のマテリアルで使い回せる便利なもの
![Page 16: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/16.jpg)
どんなマテリアルが必要か?
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 17: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/17.jpg)
① 基本機能
▼PBR 仕様 ▼ フレネル ▼Emissive と点滅
▼Texture Animation ▼Detail Map ▼Texture Blend
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 18: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/18.jpg)
② 本作特有機能▼ 背景物の状態変化
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 19: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/19.jpg)
③ プログラマー側の追加機能▼ 背景物にカメラが入った際の透過機能
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 20: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/20.jpg)
それぞれをマテリアルファンクションにして管理
① 基本機能
+② 本作特有機能
+③ プログラマー側の追加機能
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 21: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/21.jpg)
①②③ をマテリアルファンクション( MF )管理
① 基本機能
② 状態変化
③ プログラマー側の追加機能
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 22: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/22.jpg)
マテリアルファンクション内は結構ぐちゃぐちゃです…
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 23: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/23.jpg)
実例紹介機能毎に MF 化したことで効率化した実例
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 24: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/24.jpg)
マテリアルファンクションの利用方法のまとめ
マスターマテリアル内を機能毎にマテリアルファンクションで分割した結果
▼ デメリット ・ノード構造の階層が深くなる (確認の際に複数の MF を開く必要がある)
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
▼ メリット ・各セクションで同時に調整が可能 ・複数のマテリアルが一度に修正
![Page 25: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/25.jpg)
マテリアル構造
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 26: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/26.jpg)
マスターマテリアルの多機能化
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
マスターマテリアル
Switch で設定できる多数の機能を持った構造
汎用のマスターマテリアルから16 個の用途の異なる
MI を生成しています。
※Switch = Static Switch Parameter の意味です。
![Page 27: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/27.jpg)
マテリアルは 3 階層で管理
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.※Switch = Static Switch Parameter の意味です。
![Page 28: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/28.jpg)
マスターマテリアル
【 1 階層目】・・・親 (共有フォルダ)
マスターマテリアルSwitch を利用して多様性のあるマテリアル構造
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 29: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/29.jpg)
マテリアルインスタンス
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
【 2 階層目】・・・子 (共有フォルダ) マテリアルインスタンス必要な Switch を ON にして使用方法を決める
![Page 30: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/30.jpg)
マテリアルインスタンス
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
【 3 階層目】・・・孫 (各リソースフォルダ)
マテリアルインスタンスのインスタンスSwitch を変更せずに使用する
![Page 31: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/31.jpg)
マテリアルは 3 階層で管理
【 1 階層目】・・・親 (共有フォルダ)
マスターマテリアルSwitch を利用して多様性のあるマテリアル構造
【 2 階層目】・・・子 (共有フォルダ) マテリアルインスタンス必要な Switch を ON にして使用方法を決める
【 3 階層目】・・・孫 (各リソースフォルダ)
マテリアルインスタンスのインスタンスSwitch を変更せずに使用する
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
リードデザイナー が作成と編集
各デザイナー が作成と編集
![Page 32: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/32.jpg)
マテリアル階層構造
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 33: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/33.jpg)
孫マテリアルのファイルサイズ増大事件発生!
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 34: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/34.jpg)
マテリアル数(リリース時)
キャラクター
9
52
2925
ステージ
25
68
502
エフェクト
20
600
0
マスターマテリアル
親
マテリアルインスタンス
子
インスタンスの インスタンス
孫Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 35: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/35.jpg)
マテリアル構造まとめ
マテリアルの親・子・孫の三層構造による管理とSwitch を利用し多機能化した少数のマテリアルで管理した結果
▼ デメリット ・マテリアル内のノードが複雑化する ・シェーダーコンパイルに非常に時間が掛かる
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
▼ メリット ・データサイズの最適化が可能 ・修正や機能拡張の手間が 1 度で済む
![Page 36: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/36.jpg)
マスターマテリアルを統合しないケース
・マテリアルの Details 内容( Blend Mode など)を変更する場合
・テクスチャアニメーションやテクスチャブレンドなど 特殊な機能を使用する場合
共有する機能が必要な場合はマテリアルファンクションを利用
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 37: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/37.jpg)
ワークフローの変化
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 38: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/38.jpg)
プランナー確認
従来のワークフロー
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
修正
プランナー
デザイナー プログラマー
マスターマテリアル
パラメーターランタイム制御マテリアルインスタンス
※マテリアル処理に関わる修正
プログラム
対応待ち 欲しいビジュアル表現の説明
![Page 39: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/39.jpg)
プランナー確認
UE のワークフロー
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
修正修正
マテリアルインスタンス
マテリアルファンクション
デザイナー
プランナー
プログラマー
マテリアルファンクション
パラメーターランタイム制御マスターマテリアル
※マテリアル処理に関わる修正
![Page 40: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/40.jpg)
ワークフローの変化のまとめ
▼ デメリット・管理するデザイナーの作業負荷が増大(実作業スタッフに対しての説明は容易になった)
デザイナーがマテリアル構築に関わるワークフローになった結果
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
▼ メリット・修正対応の高速化(プログラム対応待ち時間が縮小)
・絵的な表現を直接制作できる
![Page 41: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/41.jpg)
マテリアルの命名規則
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 42: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/42.jpg)
命名規則について名前で明記する必要のある内容
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
・マスター マテリアル(親)・インスタンス(子)・インスタンスの インスタンス(孫)
・キャラ班・ステージ班・エフェクト班
・汎用・炎用・水用
・モデル用・デカール・ポスト
・不透明・ 1bit アルファ・半透明
階層名 セクション 用途種類( Material Domain )
アルファ( Blend Mode )
・ Change OFF・ Opacity ON・ Normal map OFF・ Multi OFF
Switch 名・ st100・ st101・ st102
ステージ名・ ext01・mov02・ ground03
アセット名
![Page 43: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/43.jpg)
マスターマテリアル(親)の命名規則
▼ 汎用マテリアルの場合
・ M _ st _ base
▼炎魔法デカールの場合
・ M _ st _ de _ tr _ Burnt
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
マスターマテリアルStage(セクション) 用途
Decal(デカール)Translucent(半透明)
※マテリアル内の Details が汎用マテリアルと異なる場合に記述
![Page 44: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/44.jpg)
マテリアルインスタンス(子)の命名規則 1
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
▼ 汎用マテリアルのインスタンス場合
・ MI _ st _ base _
マテリアルインスタンス セクション(ステージ)
用途
Switch による用途の変化を全部入れると名前が長くなりすぎる点と Switch 変更時に問題!
Ch _ Op _ No _ Mu_…
Change OFF
Opacity
ONNormal map OFF
MultiMap OFF
![Page 45: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/45.jpg)
マテリアルインスタンス(子)の命名規則 2
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
古臭いけど最後の手段を使いました・・・
マジックナンバー‼
「この数字の意味はわからないが、とにかくプログラムは正しく動く。まるで魔法の数字だ」という皮肉を含む数字。(ウィキペディアより)
![Page 46: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/46.jpg)
親マテリアルと Switch による分岐を四桁の数字で管理
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
▼Switch による分岐説明はエクセルで管理
MI_st_m0101… 汎用マテリアルでシナジー変化あり MI_st_m0102… 汎用マテリアルでシナジー変化なし MI_st_m0103… シナジー変化なしでエミッシブマスクを使用する MI_st_m0104… シナジー変化なしで Detail Map を使用する ・ ・ ・
▼ 汎用マテリアルのインスタンス場合
・ MI _ st _ m0107 マテリアルインスタンス
セクション(ステージ)親マテリアルを上二桁の番号で表記 Switch による分岐を下二桁の番号で表記
マテリアルインスタンス(子)の命名規則 3
![Page 47: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/47.jpg)
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
マテリアルインスタンス(子)の命名規則 4
サンプルスシーンを作成して説明
![Page 48: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/48.jpg)
インスタンスのインスタンス(孫)の命名規則
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
▼ モデル名( Static Mesh ) SM _ st100 _ ext05
▼ テクスチャ名 T_ st100 _ ext05
MI _ st _ m0102 _ st100 _ ext05ステージ名 アセット名
▼最終的なモデルにアサインするマテリアル名
マテリアルインスタンス名
補足「 ext」は exterior(外観)の略。建物外観などに使用。
![Page 49: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/49.jpg)
マテリアルの命名規則まとめ
▼ デメリット・マテリアルインスタンス以降は用途が分かりにくい 作業するデザイナーへの用途説明としてサンプルシーンを作成
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
本作の命名規則を運用して感じた内容
▼ メリット・ファイル名がシンプルで短くなる・検索しやすい・ Switch による MI の増加に対応できる構造
![Page 50: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/50.jpg)
プログラマーや他セクションが検索しやすく、
親子関係と用途が伝わりやすいシンプルな名前が理想
マテリアルの命名規則の理想
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 51: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/51.jpg)
プログラマー編
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 52: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/52.jpg)
株式会社バイキング
CTO
すずき たかし
鈴木孝司
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 53: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/53.jpg)
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
自己紹介
マジシャンズデッドでの担当部位 ネットワークの調査と基礎実装 アウトゲームのフローとアセットローディング関連 シェーダー (usf) に対する機能追加 AI 各種デバッグと最適化、さまざまな技術的問題解決
BP の利用は計画的に・・・
![Page 54: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/54.jpg)
マジシャンズデッド制作時のパッケージサイズ肥大化問題について
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 55: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/55.jpg)
シェーダーはどこに保存されているの?
エディター パッケージ
Derived Data Cache(DDC)
Materialまたは
Material Instance
パッケージとエディターで保存位置が変わる
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 56: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/56.jpg)
とある日のマジシャンズデッドパッケージ
パッケージサイズ内訳
非マテリアルインスタンスマテリアルインスタンス
パッケージの総サイズ 30GB に対して60% がマテリアルインスタンス
うわっマテリアルインスタンス大きすぎ?
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
60%
![Page 57: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/57.jpg)
オンラインアップデート不能
運営時にアセットの追加や修正がある度にギガパッチを当てる
必要が出てしまう
アップデート時のダウンロード時間 ( =更新差分サイ
ズ ) には制限がある
このままではリリースできない
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 58: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/58.jpg)
パッケージ内のファイルを調査
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
総ファイルサイズ 30GB
MI ファイル数 3328files
MI総ファイルサイズ 18.6GB
キャラ向け MI 数 2131( 内 1830 ファイルが 1MB以上 )
キャラ用 MI総ファイルサイズ 17.5GB
背景用 MI 数 474( 内 277 ファイルが 1MB以上 )
とあるキャラの一つの MI サイズ 10.3MB
![Page 59: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/59.jpg)
とりあえず原因を調べる
UDN に相談!
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
エディタで開いてみてもマテリアルやMI に異常はな
い
開発環境のコンテンツフォルダ内ではひとつ 150K程度
パッケージすると1つのマテリアルインスタン
スで 10MB を超える
![Page 60: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/60.jpg)
有用な情報が!!!
「マテリアルインスタンス内でスイッチなどを使うとマテリアルインスタンスが
肥大化することがあります。」S藤さんありがとうございました
末端MI(以後、孫MI)で Switch を多用していた
デザイナーに相談なんとか対応してもらえることに
ただし結構な作業量なので全部処理しきれるかわからない…
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 61: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/61.jpg)
1つのマテリアルインスタンスが 10MB問題
総MI サイズ =各シェーダーサイズ × シェーダー数
UE4.13 の Shader Permutation Reduction が効く
かも篠山様談
マジシャンズデッドは、
4.12.5 で固定なので直接は使えないが
何かヒントがあるかも
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 62: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/62.jpg)
Shader permutation reduction on 4.13-18% ただし Stationary Skylight
をプロジェクトで利用している・・・
利用できそうなものは無かった・・・
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 63: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/63.jpg)
他になにかないか、プロジェクト設定を見ていたら・・・
これ、いらなくない?
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
マジシャンズデッドは DirectX11で動作
![Page 64: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/64.jpg)
シェーダー数半減!
元のファイルサイズ SM4 のチェックを外した後
10.3MB 5.56MB
ターゲットが固定されているならSM4 を外すことでシェーダービルド待ち時間も減ると思うので
チェックを外しておくのがお勧めです
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 65: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/65.jpg)
同じマテリアルをコンパイルしているのに特定の MI のサイズに変化が
シェーダー命令数が尋常ではないほど違う
1000 instructions → 450 instructions
マテリアルでなにかが起こっている・・・
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
4.13 でパッケージすると MI のサイズが激減しているような・・・
![Page 66: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/66.jpg)
Instruction を増やしていた原因
原因は Noise ノード
UE4.13 で Noise ノードがリファイン
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 67: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/67.jpg)
マテリアルを最適化
Perlin ノイズは重いのでFastGradient+α に置き換え
1000 → 300Instructions最適化前 最適化後
5.56MB 2.38MB
インストラクション数は直接サイズに影響する
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 68: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/68.jpg)
最終ビルド結果
最初 最終
総ファイルサイズ 30,000MB 14,700MBMI ファイル数 3,328files 4,200filesMI総ファイルサイズ 18,600MB 2,330MBキャラ向け MI 数 2,131
( 内 1,830 ファイルが 1MB以上 )
2,929( 内 878 ファイルが 1MB以上 )
キャラ用 MI総ファイルサイズ
17,500MB 2,010MB
背景用 MI 数 474( 内 277 ファイルが 1MB以上 )
529( 内 77 ファイルが 1MB以上 )
とあるキャラの MI サイズ 10.3MB 2.3MB
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 69: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/69.jpg)
グラフ
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
ファイルサイ
ズ
マテリアル総
ファイルサイ
ズ
キャラ総ファ
イルサイズ
とあるキャラ
の MIサイズ (M
B)0.0GB5.0GB
10.0GB15.0GB20.0GB25.0GB30.0GB35.0GB
パッケージサイズの変化
問題発覚時 最終ビルド
51%減 87%減 88%減 77%減
![Page 70: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/70.jpg)
ビルド結果補足
デカイ MI が結構残っているけど・・・
両面描画フラグでもMI が肥える事が発覚
MI が増えてるけど・・・
調査開始と最終ビルドの間に
アセットが増えました
現在は修正済みです
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
![Page 71: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/71.jpg)
まとめ
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.
パッケージを作ってみないとわからないことがある Pak 化してると見逃しやすい
Jenkins でクック済みファイルサイズのログをグラフ化するなど
マテリアル → 子MI(static switch 有 ) → 孫MI の構造がオススメ 必要なパターンの子MI を作っておく マテリアルインスタンスのファイルサイズ増加は読み込み時間やメインメモリ使用量に悪影響がある
( テクニカル ) アーティスト主導でマテリアルを作れるようになったがInstruction 数の肥大や重い命令などに注意が必要
1 ノードが 1GPU 命令に変換されるわけではない ワークフロー中に命令数などのチェックを入れる
常に気をつける癖をつける!
アーティストおよびデザイナー向けのパフォーマンス ガイドライン しかしながらすべてを監視するのは無理
解決法を模索していきましょう
![Page 72: マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD](https://reader034.fdocuments.net/reader034/viewer/2022042505/58e4b99f1a28ab1c1f8b60ef/html5/thumbnails/72.jpg)
ご清聴ありがとうございました
Ⓒ2016 BYKING Inc. All rights reserved. Ⓒ2015-2016 EXIGE GAMES Sdn.Bhd. All rights reserved.