SlideShare a Scribd company logo
1 of 76
UE4を用いたTPS制作事例
EDF:IR
レベル構成について
株式会社ユークス
テクニカルディレクター
野津 翔太郎
©2019 YUKE'S ©2019 D3 PUBLISHER
はじめに
・4.19.2がリリースバージョンです
・本日お話する内容が、先日リリースされた4.23でも同じ動作をするかは
保証できませんのでご了承ください
・参考情報程度ですが、開発期間中に4.20.2までは動作確認しました
・原則としてエンジンは改造していません。必要最低限のバグ修正やCLの
取り込み、一部エディタの機能調整のみ施しました
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
・本タイトルは大きく「メインメニュー」「インゲーム」の2つに分かれます
・また、インゲームはミッション形式となっており、メインメニューにて選択した
ミッションをインゲームで遊び、クリアなり死亡なりした際にまたメインメ
ニューに戻る、という構成でゲームが進行します
・ミッションは非連続で、必ずメインメニューを挟みます
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ゲームフロー
・メインメニュー ・出撃ローディングスクリーン
出撃
ミッションやギア、武器等を選択 ゲームに必要なものを全て読む
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ゲームフロー
・インゲーム ・帰還ローディングスクリーン
クリア
死亡
選択されたミッションでプレイ メニューに必要なものを全て読む
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
・メインとなるパーシスタントレベルは2種類
・メインメニュー :帰還ローディング ⇒ メインメニュー
・ミッション :出撃ローディング ⇒ インゲーム
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
・EDF:IRでは54ミッションを作成した
・全てのミッションでユニークなエンバイロンメントを実装することは現実的で
はなかったので、 ベースとなるロケーションおよびロケーション毎のライティン
グの組み合わせ、マイナーな地形変更でバリエーションを出すように
・市街地エリア、砂漠都市、荒野、住宅街エリア、高層ビルエリア、海岸、
森林、砂漠、基地、地下道、戦艦、火山の12ロケーション
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ロケーションとライティングの組み合わせ
・市街地エリア+ 昼
・市街地エリア+ 夜
・市街地エリア+ 降雪昼
・高層ビルエリア+ 昼
・高層ビルエリア+ 夕暮れ
・森林 + 朝 etc…
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ミッションごとに組み合わせを設定
・ミッション1:市街地エリア+ 昼
・ミッション2:高層ビルエリア + 昼
・ミッション3:森林 + 夜
・ミッション4:市街地エリア+ 降雪昼
・ミッション5:市街地エリア+ 昼
・ミッション6:高層ビルエリア+ 夕暮れ etc…
©2019 YUKE'S ©2019 D3 PUBLISHER
↑昼 夕暮れ↑
←夜
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ロケーション単位の制作
・ロケーション毎に必要なアセットをすべて含む
パーシスタントレベルを用意し、アーティストや
レベルデザイナーにはそちらで作業をして貰う
・サブレベル数やサブレベル名に制限はなく、
建物やプロップ、プレイエリアかどうかなどで
適宜自由に分割していた
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ロケーション単位の制作
・ここでは3D空間上の場所が重複しても良いので、表示のオンオフを切り
替えてとにかく全て配置している
©2019 YUKE'S ©2019 D3 PUBLISHER
バリエーションサンプル1
©2019 YUKE'S ©2019 D3 PUBLISHER
バリエーションサンプル2
©2019 YUKE'S ©2019 D3 PUBLISHER
バリエーションサンプル1&2 同時表示
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ロケーション単位の制作
・地面や建物やプロップはもちろんのこと、サウンドの高さ補正をかけるため
のポイントや、マップ作成用のエリア指定ボリュームなど、ミッションではなくロ
ケーションを基準にして設定すべきものはここで配置する
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ロケーション単位の制作
・ライティングを設定するサブレベルは、実際はライト以外のアクターも含む
・ライト、フォグ、天球、ポストプロセスボリュームが基本構成
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ロケーション単位の制作
・追加で、朝もやのようなVFXを配置したり、街灯のような夜にのみ必要な
ライトを置いたりする
・ライトは全てMovableとなり
ライトマップは使用しないので
ライトシナリオ設定はなし
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ミッションごとの制作
・ミッションごとにパーシスタントレベルを用意
・ロケーション用に配置したサブレベルのうち、
そのミッションに必要なサブレベルのみ登録する
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ミッションごとの制作
・ここではロケーション用サブレベルに配置したアクターは触らない
・エネミーのジェネレータやイベントボリューム等のミッション独自のアクターを
ミッション用サブレベルを作成し配置する
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ミッションごとの制作
・パーシスタントレベルには、原則アクター配置禁止
・OpenLevel時にヒッチするのを回避するため
・しかし、サブレベルにはNavMeshを置けないため、NavMesh関連のア
クターのみパーシスタントレベルに配置
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ロード方法
・ロードすべきサブレベルは、別途用意しているミッションパラメータに設定さ
れている
・ミッション開始前に、パラメータから取得したサブレベルのリストをもって
Load Stream Levelにてレベルロードを行う
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
■ロード方法
・サブレベルをパーシスタントレベルに設定し、更にその名前を別途リストで
持つのは冗長ではあるが、パーシスタントレベルにぶら下がっているサブレベ
ルはパーシスタントレベルをロードするまでわからないため仕方がない
・こちらはどんぶつさんのQiitaの記事の内容で解決するかも?
https://qiita.com/donbutsu17/items/e129d638285d4b77df30
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
・レベルのロード処理はブループリントで行っている
・ゲームモードでは行っておらず、別途ゲームマネージャというブループリント
を作成し、そこで行う
・ゲームモードにやらせているのは、ミッション開始時にゲームマネージャをス
ポーンするだけ
©2019 YUKE'S ©2019 D3 PUBLISHER
EDF:IRのレベル構成について
・ゲームマネージャではロード処理とフェード、字幕、シネスコ、ムービー等、
全体で使用するウィジェットの管理を行う
・HUDやポーズメニューなどプレイヤーごとに必要なウィジェットはプレイ
ヤーごとに個別に持たせる
・ゲームマネージャもほぼ何もしておらず、ロードが終わった後は、ウィジェッ
トへの操作を受け付けるのみ
©2019 YUKE'S ©2019 D3 PUBLISHER
Loading Tips
©2019 YUKE'S ©2019 D3 PUBLISHER
Loading Tips
・ゲームがまともに動き出した当時(TGS2017出展時点)、インゲームへ移
行する際の出撃ローディング時間はなんと84秒にも(ほんとごめんなさい)
・ユーザビリティの低下もさることながら、コンソールのレギュレーションにも抵
触しているのでいろいろな意味でまずい
・当然高速化対象になったので、その際に施した対策をご紹介
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■重いアセットのシェイプアップ
・まずはシンプルに重いアセットの削減対応
・loadtimes.dumpreport コマンドを実行することで、ロード時間にイ
ンパクトがあるアセットが一撃で判明する
・このコマンドは、 loadtimes.reset コマンドが実行された時点を基準に、
そこから新たにロードされたファイルのロード時間を降順でリストアップしてく
れるコマンド ©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■重いデータのシェイプアップ
・最重アセットはおそらくレベル、次点でウィジェットやテクスチャがくるはず
・テクスチャは、No Streamになっているものをいかに減らすかがポイント
・UIやVFXのテクスチャはNo StreamをOffにし辛いので、アーティストと
相談して圧縮形式を変更したり解像度をダウンさせたりする
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■重いデータのシェイプアップ
・レベルは配置物を減らす必要があり、ハードルが高い
・ケーススタディとして、昔からバージョンをまたいで使っているようなレベルに
ついてはゴミが残りやすいようで、配置されているアクターをコピーし新規で
作成したレベルに配置しなおすだけでロード時間が数秒減ったこともあった
・原因不明な重さがある場合は是非試して頂ければ
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事前ロード
・馬鹿正直にロードをするとどうしても時間がかかるため、メインメニューにい
る時点でロードを開始したい
・本作の場合、読むべきアセットはこの
画面の時点ですべて判明している
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事前ロード
・ミッションに必要なサブレベルのロードに一番時間がかかる
→ サブレベルを事前に裏でロード!
・ミッションを決定したらすぐさま裏で
ロードを開始する機構を実装
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事前ロード
・事前ロードを利用するには、Asset
ManagerでPrimary Assetを
登録する必要がある
・プロジェクト設定から設定可能
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事前ロード
・指定ディレクトリ以下のアセットに
設定した属性を付与してくれる
・画像のMapタイプはデフォルトで
存在しているもので、レベルを事前
ロードしたい場合はこの設定を
そのまま流用可能
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事前ロード
・ロード/アンロードはブループリントで
・Async Load Primary Assetで任意の
タイミングで非同期ロードを開始
・要らなくなったらUnload Primary
Assetでアンロード
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事前ロード注意点
・事前ロードということで、ミッション確定後に十分な時間メインメニューに滞
在することが条件にはなるが、最大時にはレベルをロードする時間がまるま
るカットされることになるのでかなり影響が大きい
・事前にロードするということでメモリを圧迫する点には注意
・本作では、事前ロードするレベルをミッションごとに細かく設定した
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
・Asset Managerやそれにまつわるアセットの管理については、
EGJ岡田様の二大名著
■UE4のモバイル開発におけるコンテンツアップデートの話 - Chunk IDとの激闘編 -
https://www.slideshare.net/EpicGamesJapan/ue4-chunk-id
■徹底解説!UE4を使ったモバイルゲーム開発におけるコンテンツアップデートの極意!
https://www.slideshare.net/EpicGamesJapan/ue4-95204920
にて、とても詳しく解説されているので、必読!
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
※ 後日追記
8/15にEGJ岡田様のブログが更新されていたらしく、Asset Manager
についての更に詳しい解説がされていますので追記しておきます。
■Asset Managerのアセットの非同期ロード機能について その1 ( 非同期ロードの解
説 & レベルの裏読み編 )
https://qiita.com/EGJ-Kaz_Okada/items/f18bca3fb5c8fc1aea9c
「その1」ということなので、「その2」の公開も非常に楽しみですね!
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・事前ロードとは反対に、ローディングスクリーンが終わりインゲームが開始
してからロードを行う事後ロードも検討
・とは言え、ゲームは始まっているので事後ロードが許容されるアセットはも
のすごく限られている
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・複数あるサブレベルのうち、遠くのものは事後ロードする対応を検討
・試してみたものの、ヒッチがひどくユーザビリティの低下が懸念された
・これはUnreal Fest East 2017にてスクウェア・エニックス様のセッショ
ンでも言及されていたことで、ヒッチの改善にはエンジン改造が必要そうだっ
たので、コストの観点から採用を見送った
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・事後ロード対象アセットの判断基準としては、ロードが遅れたとしても
「ゲームプレイに影響せず」「ユーザビリティにも影響しない」もの
・演出にのみ使われるアセットを候補に
→ Destructible Mesh!!
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・本作ではDestructible Mesh(以降、DM)を使用して建物の破壊表
現をしていたが、完全に演出用の表現でゲームの本質に関係ない部分
・もともと建物は「詳細破壊」「簡易破壊」という機能を持っており、DMが使
われるのは前者のみのため、DMの事後ロードが終わる前に建物が破壊さ
れた場合は簡易破壊を実行させることであまりコストをかけずつじつまを合
わせる対応を施すことが出来そう
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・もともとDMはハードリファレンスでブループリントに設定していたが、これを
ソフトリファレンスに変更
・ソフトリファレンスにすることで、参照はされているがロードは行われなくなる
という状態を作れる ©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・ハードでもソフトでも設定のインターフェースは変わらないため、入力ルー
ルを追加することなく運用も可能
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・全てのサブレベルのロードが完了し、出撃ローディングスクリーンが終了す
る直前に、全てのアクターから建物のアクターのみリストアップ
・建物のアクターからDMのソフトリファレンスを取得し、リストしておく
・そして、出撃ローディングスクリーン終了と共に、ゲームマネージャにて
DMのロードを開始する
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・問題に遭遇
・ミッション開始後にストリーミング再生されるストーリ用ボイスとDMの
ロードがバッティングし、DMのロードが終わるまでボイスの再生がされない
不具合が発生した
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・ロードするDMのソフトリファレンスはリストを使って1度だけロードリクエス
トをかける形にしていた
・そのせいでロードが割り込めず、後から要求があったボイスが必ず待たさ
れることとなっていた
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
ここでリクエストしても ここまで待たされる
Loading Time Line
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・ロードリクエストを、リストではなく1つずつ発行する処理に変更
・更にロード完了後すぐに次のリクエストを発行せず、1秒のギャップを入れ
ることでストリーミングリクエストが消化される余裕を持たせた
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
Loading Time Line
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■事後ロード
・結果、DMロード分の体感時間はまるまるカットできた
・都合が良いことに、 DMはアセットサイズが大きくなりがちでロード時間も
比較的長めのアセットだったため、体感ロード時間の短縮に大きく寄与した
・どのアセットを事後ロードに持ってこれるかはゲームの内容次第になるので、
まずはプロジェクトのアセットをカテゴライズし、事後ロードにまわせるものが
あるか検討して頂ければ ©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■FileOpenOrder
・Unreal Pakを使用している場合、デフォルトだとエンジン任せになってい
るファイルの順番を、下記のパスにてオーダーファイルを別途指定することで
任意に指定することが出来る
・ProjectRoot/Build/*Platform*/FileOpenOrder/
GameOpenOrder.log
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■FileOpenOrder
・内容はただのテキストであり、ひたすら
アセットのパスが書かれているだけ
・これを使うことにより、Unreal Pakの
内容が整列され、ファイルアクセスが
高速になる可能性がある
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■FileOpenOrder
Bad Case Good Case
Asset1
Asset2
Asset3
Asset4
Asset1
Asset2
Asset3
Asset4
UnrealPakFileOrder
UnrealPakFileOrder
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■FileOpenOrder
・手書きでも動作はするが、何万もあるアセットの順番の確からしさを手動
で保証するのは無理がある
・何よりアセットは日々追加されるので、手動作業は現実的ではない
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■FileOpenOrder
・実行オプション[-fileopenlog]を指定してゲームをスタンドアローンで実
行することで「実際に読まれたファイル」を記録したログファイルが得られるの
で、それをそのまま使うことで実ロード順に即した形でのリストが入手できる
・ロードをなぞるだけということでCIとの相性が良いので、自動テストなどに
組み込んで運用するのがオススメ
©2019 YUKE'S ©2019 D3 PUBLISHER
出撃ローディング
■FileOpenOrder
・本作では細かいアセットが多くあったためか、このファイルを指定することで
出撃ロード時間の短縮に大きな効果があった(約19秒短縮)
・ファイル数や元の順番次第で施策後の効果の如何が大幅に変わってくる
ので、ご自身のプロジェクトでまずは試して頂ければ
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
・最初はあまり問題にならなかったメインメニューも、アセット量産フェーズに
入り徐々に長くなっていき、最終的には30秒にも
・インゲームと比較するとマシだが、ユーザーとしては納得しにくい時間
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■オンデマンドロード
・ロードしているアセットの量が多いことはわかっていた
・メインメニューから全てのギアや武器、アイテム、クリエイトパーツなどを装
備でき、それらのメッシュがプレビューできる必要があったため
・必要な全てのアセットをハードリファレンスするデータテーブルを使っていた
ため、アセットが増えるにつれロード時間が伸びていった
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■オンデマンドロード
・そこで、他と同様まずはハードリファレンスをソフトリファレンスに変更
・更に今まではオンメモリにある前提で書かれていた処理を、必要に応じて
ロードする処理に書き換えた
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■オンデマンドロード
・オンデマンドロードの導入でハードリファレンスを駆逐し、帰還ローディング
時間は30秒から19秒まで大幅に減らすことができた
・逆に残った19秒について、何がそんなにかかっているのだろうか?
©2019 YUKE'S ©2019 D3 PUBLISHER
ウィジェット!!
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・loadtimes.dumpreportでプロファイルすると、大量のウィジェットが
上位に来ていた
・いくつかのウィジェットはロード時間1秒以上をたたき出していた
・19秒のうち、なんと15秒はウィジェットのロードだった
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・多方面で言われているウィジェットのロード時間問題
・本作でも同じ問題にぶち当たり、大変難儀した
・解決方法も「UObjectを頑張って減らす!!」という情報くらいしかなく、
根本的に減らすにはエンジン改造にまで話が及んでしまっていた
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・ウィジェットの主たる作業者であるUIアーティストにUObjectを減らして
ほしいというのも、指示としては曖昧で少し無理があった
・そこで、重いアセットの共通点を探し、傾向を探ってみた
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・どうやら、ウィジェットの中にウィジェットを含むものが重い
・中でも、ウィジェットの中のウィジェットにアニメーションを含むものが重い
・必要ないアニメーション、Visibilityを切り替えるだけのあまり意味のない
アニメーションなどは積極的に削除したがまだ重い
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・ウィジェット内ウィジェットは内容にかかわらず配置の数だけロードされる
↑のセット×11©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・更にこのウィジェットにもウィジェットが含まれており…
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・問題が起きていたのは
「ある程度重い(ロード時間が長い)アニメーションを含むウィジェットを
あらかじめウィジェット内の階層に数多く組み込んでいる」
というケースで、同じウィジェットアセットを大量にロードしていた
・なら、動的に追加すれば回避できるのでは?
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・そこで、実行時にウィジェットブループリントからで動的配置を行うよう処
理を変更した劇的な変化が!
・1.5秒かかっていたウィジェットのロード時間がなんと0.2秒に
・他の同様の構成のウィジェットにも徹底的に手を入れることで、19秒残っ
ていたロード時間がなんと8秒まで減った
©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
■ウィジェット
・注意点として、実行時に動的に追加するということは、レイアウト調整作業
がUIアーティストの手から離れるということに
・今回のケースではプロジェクト終盤だったため、既にレイアウト調整を終え
たものに寄せて動的配置するだけで済んだ
・この手法を使った場合の運用については、入念にワークフローを決めてか
ら着手したほうが良さそう ©2019 YUKE'S ©2019 D3 PUBLISHER
帰還ローディング
・ロード時間については下記のEGJ篠山様の資料でもまとめられているので、
是非ご覧になってみてください
■UE4におけるLoadingとGCのProfilingと最適化手法
https://www.slideshare.net/EpicGamesJapan/ue4loadinggcprofiling
©2019 YUKE'S ©2019 D3 PUBLISHER
LoadingTips まとめ
・最初は最大で84+30秒もあったロード時間が、32+8秒まで縮まった
・劇的な改善はできたものの、まだまだ快適とは言えない状況
・ただ、思ったよりはやれることが多かった
・ソフトリファレンスは積極的に使っていきたい
・ロード時間短縮手法についてはまだあまり情報が多いとは言えないので、
今後もいろいろ色々試していきたい
©2019 YUKE'S ©2019 D3 PUBLISHER
ご清聴ありがとうございました!
©2019 YUKE'S ©2019 D3 PUBLISHER

More Related Content

What's hot

『FINAL FANTASY VII REMAKE』におけるプロファイリングと最適化事例 UNREAL FEST EXTREME 2021 SUMMER
『FINAL FANTASY VII REMAKE』におけるプロファイリングと最適化事例 UNREAL FEST EXTREME 2021 SUMMER『FINAL FANTASY VII REMAKE』におけるプロファイリングと最適化事例 UNREAL FEST EXTREME 2021 SUMMER
『FINAL FANTASY VII REMAKE』におけるプロファイリングと最適化事例 UNREAL FEST EXTREME 2021 SUMMERエピック・ゲームズ・ジャパン Epic Games Japan
 
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~エピック・ゲームズ・ジャパン Epic Games Japan
 
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動についてUE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動についてcom044
 
[UE4]自動テストでもっと楽したい!
[UE4]自動テストでもっと楽したい![UE4]自動テストでもっと楽したい!
[UE4]自動テストでもっと楽したい!com044
 

What's hot (20)

UE4におけるLoadingとGCのProfilingと最適化手法
UE4におけるLoadingとGCのProfilingと最適化手法UE4におけるLoadingとGCのProfilingと最適化手法
UE4におけるLoadingとGCのProfilingと最適化手法
 
60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編
 
『FINAL FANTASY VII REMAKE』におけるプロファイリングと最適化事例 UNREAL FEST EXTREME 2021 SUMMER
『FINAL FANTASY VII REMAKE』におけるプロファイリングと最適化事例 UNREAL FEST EXTREME 2021 SUMMER『FINAL FANTASY VII REMAKE』におけるプロファイリングと最適化事例 UNREAL FEST EXTREME 2021 SUMMER
『FINAL FANTASY VII REMAKE』におけるプロファイリングと最適化事例 UNREAL FEST EXTREME 2021 SUMMER
 
猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り
 
60fpsアクションを実現する秘訣を伝授 解析編
60fpsアクションを実現する秘訣を伝授 解析編60fpsアクションを実現する秘訣を伝授 解析編
60fpsアクションを実現する秘訣を伝授 解析編
 
アーティストの為のプロファイル入門!~楽しいRenderDocの使い方~
アーティストの為のプロファイル入門!~楽しいRenderDocの使い方~アーティストの為のプロファイル入門!~楽しいRenderDocの使い方~
アーティストの為のプロファイル入門!~楽しいRenderDocの使い方~
 
UE4アセットリダクション手法紹介
UE4アセットリダクション手法紹介UE4アセットリダクション手法紹介
UE4アセットリダクション手法紹介
 
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
 
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
 
UE4で作成するUIと最適化手法
UE4で作成するUIと最適化手法UE4で作成するUIと最適化手法
UE4で作成するUIと最適化手法
 
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
 
UE4における大規模背景制作事例 最適化ワークフロー編
UE4における大規模背景制作事例 最適化ワークフロー編UE4における大規模背景制作事例 最適化ワークフロー編
UE4における大規模背景制作事例 最適化ワークフロー編
 
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動についてUE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
 
UE4におけるエフェクトの為のエンジン改造事例
UE4におけるエフェクトの為のエンジン改造事例UE4におけるエフェクトの為のエンジン改造事例
UE4におけるエフェクトの為のエンジン改造事例
 
UE4のシーケンサーをもっともっと使いこなそう!最新情報・Tipsをご紹介!
UE4のシーケンサーをもっともっと使いこなそう!最新情報・Tipsをご紹介!UE4のシーケンサーをもっともっと使いこなそう!最新情報・Tipsをご紹介!
UE4のシーケンサーをもっともっと使いこなそう!最新情報・Tipsをご紹介!
 
UE4における大規模背景制作事例(コリジョン編)
UE4における大規模背景制作事例(コリジョン編) UE4における大規模背景制作事例(コリジョン編)
UE4における大規模背景制作事例(コリジョン編)
 
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演) #UE4DD
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演)  #UE4DDUE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演)  #UE4DD
UE4 MultiPlayer Online Deep Dive: 実践編1 (Byking様ご講演) #UE4DD
 
UE4のモバイル向け機能や最新情報などを改めて紹介!2019
UE4のモバイル向け機能や最新情報などを改めて紹介!2019UE4のモバイル向け機能や最新情報などを改めて紹介!2019
UE4のモバイル向け機能や最新情報などを改めて紹介!2019
 
豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive)
豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive)豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive)
豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive)
 
[UE4]自動テストでもっと楽したい!
[UE4]自動テストでもっと楽したい![UE4]自動テストでもっと楽したい!
[UE4]自動テストでもっと楽したい!
 

Similar to UE4を用いたTPS制作事例 EDF:IR レベル構成について

OSS強化学習向けゲーム環境の動向
OSS強化学習向けゲーム環境の動向OSS強化学習向けゲーム環境の動向
OSS強化学習向けゲーム環境の動向gree_tech
 
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそうビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそうUnity Technologies Japan K.K.
 
今流行りのウェブアプリ開発環境Yeoman
今流行りのウェブアプリ開発環境Yeoman今流行りのウェブアプリ開発環境Yeoman
今流行りのウェブアプリ開発環境Yeomantomo_masakura
 

Similar to UE4を用いたTPS制作事例 EDF:IR レベル構成について (10)

UE4を用いたTPS制作事例 EDF:IR アニメーション作成事例紹介
UE4を用いたTPS制作事例 EDF:IR アニメーション作成事例紹介UE4を用いたTPS制作事例 EDF:IR アニメーション作成事例紹介
UE4を用いたTPS制作事例 EDF:IR アニメーション作成事例紹介
 
UE4における大規模レベル実装ワークフローとブループリント活用事例
UE4における大規模レベル実装ワークフローとブループリント活用事例UE4における大規模レベル実装ワークフローとブループリント活用事例
UE4における大規模レベル実装ワークフローとブループリント活用事例
 
UE4を用いたTPS制作事例 EDF:IR 地球を衛る兵士の歩き方
UE4を用いたTPS制作事例 EDF:IR 地球を衛る兵士の歩き方UE4を用いたTPS制作事例 EDF:IR 地球を衛る兵士の歩き方
UE4を用いたTPS制作事例 EDF:IR 地球を衛る兵士の歩き方
 
UE4を用いたTPS制作事例 EDF:IR パラメータ管理実装実例
UE4を用いたTPS制作事例 EDF:IR パラメータ管理実装実例UE4を用いたTPS制作事例 EDF:IR パラメータ管理実装実例
UE4を用いたTPS制作事例 EDF:IR パラメータ管理実装実例
 
Unity2018/2019における最適化事情
Unity2018/2019における最適化事情Unity2018/2019における最適化事情
Unity2018/2019における最適化事情
 
UE4を用いたTPS制作事例 EDF:IR 地球を衛る兵士の作り方
UE4を用いたTPS制作事例 EDF:IR 地球を衛る兵士の作り方UE4を用いたTPS制作事例 EDF:IR 地球を衛る兵士の作り方
UE4を用いたTPS制作事例 EDF:IR 地球を衛る兵士の作り方
 
OSS強化学習向けゲーム環境の動向
OSS強化学習向けゲーム環境の動向OSS強化学習向けゲーム環境の動向
OSS強化学習向けゲーム環境の動向
 
[GTMF2019]Unreal Engine 4の2019年上半期 アップデート情報まとめ
[GTMF2019]Unreal Engine 4の2019年上半期 アップデート情報まとめ[GTMF2019]Unreal Engine 4の2019年上半期 アップデート情報まとめ
[GTMF2019]Unreal Engine 4の2019年上半期 アップデート情報まとめ
 
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそうビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
 
今流行りのウェブアプリ開発環境Yeoman
今流行りのウェブアプリ開発環境Yeoman今流行りのウェブアプリ開発環境Yeoman
今流行りのウェブアプリ開発環境Yeoman
 

More from エピック・ゲームズ・ジャパン Epic Games Japan

『バランワンダーワールド』でのマルチプラットフォーム対応について UNREAL FEST EXTREME 2021 SUMMER
『バランワンダーワールド』でのマルチプラットフォーム対応について  UNREAL FEST EXTREME 2021 SUMMER『バランワンダーワールド』でのマルチプラットフォーム対応について  UNREAL FEST EXTREME 2021 SUMMER
『バランワンダーワールド』でのマルチプラットフォーム対応について UNREAL FEST EXTREME 2021 SUMMERエピック・ゲームズ・ジャパン Epic Games Japan
 
SAMURAI JACK開発事例:海外むけアクションゲームをオーソドックスに作ってみた UNREAL FEST EXTREME 2021 SUMMER
SAMURAI JACK開発事例:海外むけアクションゲームをオーソドックスに作ってみた UNREAL FEST EXTREME 2021 SUMMERSAMURAI JACK開発事例:海外むけアクションゲームをオーソドックスに作ってみた UNREAL FEST EXTREME 2021 SUMMER
SAMURAI JACK開発事例:海外むけアクションゲームをオーソドックスに作ってみた UNREAL FEST EXTREME 2021 SUMMERエピック・ゲームズ・ジャパン Epic Games Japan
 
『ガールズ&パンツァー 最終章』第3話 アニメとゲームエンジンの融合(ジャングル完結編) UNREAL FEST EXTREME 2021 SUMMER
『ガールズ&パンツァー 最終章』第3話 アニメとゲームエンジンの融合(ジャングル完結編)  UNREAL FEST EXTREME 2021 SUMMER『ガールズ&パンツァー 最終章』第3話 アニメとゲームエンジンの融合(ジャングル完結編)  UNREAL FEST EXTREME 2021 SUMMER
『ガールズ&パンツァー 最終章』第3話 アニメとゲームエンジンの融合(ジャングル完結編) UNREAL FEST EXTREME 2021 SUMMERエピック・ゲームズ・ジャパン Epic Games Japan
 

More from エピック・ゲームズ・ジャパン Epic Games Japan (20)

猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
 
Unreal Engine 5 早期アクセスの注目機能総おさらい Part 2
Unreal Engine 5 早期アクセスの注目機能総おさらい Part 2Unreal Engine 5 早期アクセスの注目機能総おさらい Part 2
Unreal Engine 5 早期アクセスの注目機能総おさらい Part 2
 
Unreal Engine 4.27 ノンゲーム向け新機能まとめ
Unreal Engine 4.27 ノンゲーム向け新機能まとめUnreal Engine 4.27 ノンゲーム向け新機能まとめ
Unreal Engine 4.27 ノンゲーム向け新機能まとめ
 
Unreal Engine 5 早期アクセスの注目機能総おさらい Part 1
Unreal Engine 5 早期アクセスの注目機能総おさらい Part 1Unreal Engine 5 早期アクセスの注目機能総おさらい Part 1
Unreal Engine 5 早期アクセスの注目機能総おさらい Part 1
 
UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)
UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)
UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)
 
UE4を使った映像制作 (UE4 Character Art Dive Online)
UE4を使った映像制作 (UE4 Character Art Dive Online)UE4を使った映像制作 (UE4 Character Art Dive Online)
UE4を使った映像制作 (UE4 Character Art Dive Online)
 
Hair Groom入門 (UE4 Character Art Dive Online)
Hair Groom入門 (UE4 Character Art Dive Online)Hair Groom入門 (UE4 Character Art Dive Online)
Hair Groom入門 (UE4 Character Art Dive Online)
 
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive OnlineUE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
 
『バランワンダーワールド』でのマルチプラットフォーム対応について UNREAL FEST EXTREME 2021 SUMMER
『バランワンダーワールド』でのマルチプラットフォーム対応について  UNREAL FEST EXTREME 2021 SUMMER『バランワンダーワールド』でのマルチプラットフォーム対応について  UNREAL FEST EXTREME 2021 SUMMER
『バランワンダーワールド』でのマルチプラットフォーム対応について UNREAL FEST EXTREME 2021 SUMMER
 
Visual Dataprepで建築データを美味しく下ごしらえ UNREAL FEST EXTREME 2021 SUMMER
Visual Dataprepで建築データを美味しく下ごしらえ UNREAL FEST EXTREME 2021 SUMMERVisual Dataprepで建築データを美味しく下ごしらえ UNREAL FEST EXTREME 2021 SUMMER
Visual Dataprepで建築データを美味しく下ごしらえ UNREAL FEST EXTREME 2021 SUMMER
 
Unreal Engineでのコンフィギュレーター制作と映像制作 UNREAL FEST EXTREME 2021 SUMMER
Unreal Engineでのコンフィギュレーター制作と映像制作  UNREAL FEST EXTREME 2021 SUMMERUnreal Engineでのコンフィギュレーター制作と映像制作  UNREAL FEST EXTREME 2021 SUMMER
Unreal Engineでのコンフィギュレーター制作と映像制作 UNREAL FEST EXTREME 2021 SUMMER
 
バレンシアガ『Afterworld: The Age of Tomorrow』の舞台裏 UNREAL FEST EXTREME 2021 SUMMER
バレンシアガ『Afterworld: The Age of Tomorrow』の舞台裏  UNREAL FEST EXTREME 2021 SUMMERバレンシアガ『Afterworld: The Age of Tomorrow』の舞台裏  UNREAL FEST EXTREME 2021 SUMMER
バレンシアガ『Afterworld: The Age of Tomorrow』の舞台裏 UNREAL FEST EXTREME 2021 SUMMER
 
SAMURAI JACK開発事例:海外むけアクションゲームをオーソドックスに作ってみた UNREAL FEST EXTREME 2021 SUMMER
SAMURAI JACK開発事例:海外むけアクションゲームをオーソドックスに作ってみた UNREAL FEST EXTREME 2021 SUMMERSAMURAI JACK開発事例:海外むけアクションゲームをオーソドックスに作ってみた UNREAL FEST EXTREME 2021 SUMMER
SAMURAI JACK開発事例:海外むけアクションゲームをオーソドックスに作ってみた UNREAL FEST EXTREME 2021 SUMMER
 
『ガールズ&パンツァー 最終章』第3話 アニメとゲームエンジンの融合(ジャングル完結編) UNREAL FEST EXTREME 2021 SUMMER
『ガールズ&パンツァー 最終章』第3話 アニメとゲームエンジンの融合(ジャングル完結編)  UNREAL FEST EXTREME 2021 SUMMER『ガールズ&パンツァー 最終章』第3話 アニメとゲームエンジンの融合(ジャングル完結編)  UNREAL FEST EXTREME 2021 SUMMER
『ガールズ&パンツァー 最終章』第3話 アニメとゲームエンジンの融合(ジャングル完結編) UNREAL FEST EXTREME 2021 SUMMER
 
UE4を使用したバーチャルヒューマンの映像制作 UNREAL FEST EXTREME 2021 SUMMER
UE4を使用したバーチャルヒューマンの映像制作  UNREAL FEST EXTREME 2021 SUMMERUE4を使用したバーチャルヒューマンの映像制作  UNREAL FEST EXTREME 2021 SUMMER
UE4を使用したバーチャルヒューマンの映像制作 UNREAL FEST EXTREME 2021 SUMMER
 
オンラインで同期した100体の巨大生物から地球を衛る方法 UNREAL FEST EXTREME 2021 SUMMER
オンラインで同期した100体の巨大生物から地球を衛る方法  UNREAL FEST EXTREME 2021 SUMMERオンラインで同期した100体の巨大生物から地球を衛る方法  UNREAL FEST EXTREME 2021 SUMMER
オンラインで同期した100体の巨大生物から地球を衛る方法 UNREAL FEST EXTREME 2021 SUMMER
 
MetaHumanサンプル解体新書 UNREAL FEST EXTREME 2021 SUMMER
MetaHumanサンプル解体新書  UNREAL FEST EXTREME 2021 SUMMERMetaHumanサンプル解体新書  UNREAL FEST EXTREME 2021 SUMMER
MetaHumanサンプル解体新書 UNREAL FEST EXTREME 2021 SUMMER
 
Twinmotion 2021とAEC分野向けソリューションのご紹介
Twinmotion 2021とAEC分野向けソリューションのご紹介Twinmotion 2021とAEC分野向けソリューションのご紹介
Twinmotion 2021とAEC分野向けソリューションのご紹介
 
UE4.26 レンダリング新機能(CEDEC+KYUSHU 2020)
UE4.26 レンダリング新機能(CEDEC+KYUSHU 2020)UE4.26 レンダリング新機能(CEDEC+KYUSHU 2020)
UE4.26 レンダリング新機能(CEDEC+KYUSHU 2020)
 
猫でもわかる Epic MegaGrants 応募への道
猫でもわかる Epic MegaGrants 応募への道猫でもわかる Epic MegaGrants 応募への道
猫でもわかる Epic MegaGrants 応募への道
 

UE4を用いたTPS制作事例 EDF:IR レベル構成について