Se ha denunciado esta presentación.
Se está descargando tu SlideShare. ×

[CEDEC+KYUSHU 2017] 最新モバイルゲームの実例からみるUE4のモバイル向け機能・Tipsを全部まるっとご紹介! + UE4.18 モバイル最新情報の紹介

Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
#UE4CEDEC
最新モバイルゲームの実例から見る
UE4のモバイル向け機能・Tipsを全部まるっとご紹介!
(CEDEC+KYUSHU 2017 追加版)
Epic Games Japan
岡田和也 星野瑠美子
#UE4CEDEC
自己紹介
• 岡田和也 (@pafuhana1213)
• 株式会社カプコンでエンジン・ゲーム開発を経験し、
2016年にEpicGamesJapanにサポートエンジニアとして入社
• 星野瑠美子
• オートデスク株式会社で...
#UE4CEDEC
お品書き
• モバイルゲーム市場におけるUE4の現状
• UE4におけるモバイル向けの機能・Tips紹介
• モバイル向けの最新レンダリング機能の紹介
担当:岡田
担当:星野

SlideShare ya no admite vídeos de YouTube

Ver el vídeo original en YouTube

SlideShare ya no admite vídeos de YouTube

Ver el vídeo original en YouTube

SlideShare ya no admite vídeos de YouTube

Ver el vídeo original en YouTube

SlideShare ya no admite vídeos de YouTube

Ver el vídeo original en YouTube

Eche un vistazo a continuación

1 de 182 Anuncio

[CEDEC+KYUSHU 2017] 最新モバイルゲームの実例からみるUE4のモバイル向け機能・Tipsを全部まるっとご紹介! + UE4.18 モバイル最新情報の紹介

Descargar para leer sin conexión

SlideShare上での表示ですとノードの文字が見えないため、Download推奨です。

2017年10月28日に九州産業大学にて開催されたCEDEC+KYUSHU 2017の講演資料です。UE4におけるモバイル向け機能・開発時の注意点・Tipsについて説明しています。(Epic Games Japan 岡田 和也)
http://cedec-kyushu.jp/2017/session/30.html

SlideShare上での表示ですとノードの文字が見えないため、Download推奨です。

2017年10月28日に九州産業大学にて開催されたCEDEC+KYUSHU 2017の講演資料です。UE4におけるモバイル向け機能・開発時の注意点・Tipsについて説明しています。(Epic Games Japan 岡田 和也)
http://cedec-kyushu.jp/2017/session/30.html

Anuncio
Anuncio

Más Contenido Relacionado

Presentaciones para usted (20)

A los espectadores también les gustó (17)

Anuncio

Similares a [CEDEC+KYUSHU 2017] 最新モバイルゲームの実例からみるUE4のモバイル向け機能・Tipsを全部まるっとご紹介! + UE4.18 モバイル最新情報の紹介 (20)

Más de エピック・ゲームズ・ジャパン Epic Games Japan (20)

Anuncio

Más reciente (20)

[CEDEC+KYUSHU 2017] 最新モバイルゲームの実例からみるUE4のモバイル向け機能・Tipsを全部まるっとご紹介! + UE4.18 モバイル最新情報の紹介

  1. 1. #UE4CEDEC 最新モバイルゲームの実例から見る UE4のモバイル向け機能・Tipsを全部まるっとご紹介! (CEDEC+KYUSHU 2017 追加版) Epic Games Japan 岡田和也 星野瑠美子
  2. 2. #UE4CEDEC 自己紹介 • 岡田和也 (@pafuhana1213) • 株式会社カプコンでエンジン・ゲーム開発を経験し、 2016年にEpicGamesJapanにサポートエンジニアとして入社 • 星野瑠美子 • オートデスク株式会社でソフトウェアエンジニアとして Maya、Softimage等の技術コンサルティング、サポートを担当 2016年7月にEpicGamesJapanに入社
  3. 3. #UE4CEDEC お品書き • モバイルゲーム市場におけるUE4の現状 • UE4におけるモバイル向けの機能・Tips紹介 • モバイル向けの最新レンダリング機能の紹介 担当:岡田 担当:星野
  4. 4. #UE4CEDEC モバイルゲーム市場における UE4の現状
  5. 5. #UE4CEDEC Hit ~Heros of Incredible Tales ~ • グローバル版が配信から19日で累計300万DL突破 • 国内でも2016年末にリリースされ、 先月に国内ユーザ数が300万を突破 LineageⅡ Revolution • サービス開始から30日間で約200億円の売上 • 8/23(水)に国内でもサービス開始!!! UE4製モバイルタイトルが国内外で大ヒット!
  6. 6. #UE4CEDEC 【リネージュ2 レボリューション】トレーラームービー_30sec_ver. https://youtu.be/DCRYuSDjfmM
  7. 7. #UE4CEDEC さらに、開発中の注目タイトルも多数! • BladeⅡ The Return of The Evil • Oceanhom 2 : Knights of the Lost Realm
  8. 8. #UE4CEDEC さらにさらに、 Epic Games もモバイルタイトルを開発中! Battle Breakers • 戦術ロールプレイゲーム • 2.5Dアニメーション • モバイル・PC間の クロスプラットフォームプレイ Battle Breakers – Gameplay Trailer - https://youtu.be/6qr0-d3eDrc
  9. 9. #UE4CEDEC NEW! ガンバリオン様よりUE4製モバイルタイトルが発表! 修羅道 SHURADO http://ganbarion.com/jp/shurado/ 事前登録受付中!
  10. 10. #UE4CEDEC これらのプロジェクトにおける知見や 頂いた要望を満たすための機能が エンジンにドンドン追加されていってます!
  11. 11. #UE4CEDEC UE4 + モバイルの波が来てる…!
  12. 12. #UE4CEDEC LineageⅡ:R 23日国内開始 早くも行列が…
  13. 13. #UE4CEDEC UE4におけるモバイル向けの機能・Tips紹介 ~How to ride this big wave~
  14. 14. #UE4CEDEC アウトライン • PC開発環境とモバイル開発環境の違い • モバイル向けの最新レンダリング機能の紹介 • モバイル開発でよく使うあの機能、UE4のどこにあるの? • UE4.18における モバイルに関する更新 • モバイル開発あるある問題とその対策・Tips紹介
  15. 15. #UE4CEDEC PC開発環境とモバイル開発環境の違い
  16. 16. #UE4CEDEC UE4の各機能のモバイル対応状況 PC・コンソール開発で使用する機能の殆どは モバイルでも問題なく使うことができます! 対象となるハードの関係で 一部の機能(特に描画機能)には制限が幾つか… • 今後のモバイルデバイスの発展・普及に期待!
  17. 17. #UE4CEDEC 実際の開発タイトルでは… LineageⅡ Revolutionでは UE4の標準機能を使って開発されています!
  18. 18. #UE4CEDEC Blueprintを使ったビジュアルスクリプティング
  19. 19. #UE4CEDEC ノードベースのMaterialエディタ
  20. 20. #UE4CEDEC UMGによるゲーム内UIの作成
  21. 21. #UE4CEDEC シネマティックカットシーンツール 「シーケンサー」
  22. 22. #UE4CEDEC その他にも便利な機能が多数! • 強力なライティング機能 • ランドスケープによる地形(テレイン)作成 • AI作成用のビヘイビアツリー機能 などなど… 非エンジニアが 「自分のアイデア」を「自分で実装」できる環境を提供!
  23. 23. #UE4CEDEC イテレーションを早く回すために… UE4の理念 「プランナー・アーティストに力を」 • エンジニアの手を借りなくても、自由に製作・調整作業ができる! • エンジニアは自身の作業に専念できる! 開発サイクルが短いモバイル開発においては このイテレーションの早さは特に効果的です!
  24. 24. #UE4CEDEC ここまでのまとめ • UE4で用意されている機能はモバイル開発でも使えます! • 非エンジニアが 「自分のアイデア」を「自分で実装」できる! • 開発サイクルが短いモバイル開発では特に効果的!
  25. 25. #UE4CEDEC PC開発環境とモバイル開発環境の違い おわり
  26. 26. #UE4CEDEC アウトライン • PC開発環境とモバイル開発環境の違い • モバイル向けの最新レンダリング機能の紹介 • モバイル開発でよく使うあの機能、UE4のどこにあるの? • UE4.18における モバイルに関する更新 • モバイル開発あるある問題とその対策・Tips紹介
  27. 27. #UE4CEDEC モバイル向けの 最新レンダリング機能の紹介
  28. 28. #UE4CEDEC UE4のレンダラ • Deferred Renderer • Clusterd Forward Renderer for VR • Mobile Forward Renderer • マテリアルシステムは デスクトップと同じ物理ベース • Feature Level ES 2, Feature Level ES 3.1
  29. 29. #UE4CEDEC モバイルレンダラの特徴 • フォワードレンダラ • マテリアルシステムはデスクトップ と同じ物理ベース • フルHDRライティングサポート ライティングやシャドウ ポストプロセスで一部機能が 制限されていた 機能強化中
  30. 30. #UE4CEDEC Feature Level ES 2 • OpenGL ES 2.0からES 3.1までの端末をターゲット • 互換性重視 • テクスチャサンプル数が8に制限
  31. 31. #UE4CEDEC Feature Level ES 3.1 • ハイエンドモバイル向け設定 • Open GL ES 3.1 • Vulkan(Android) • Metal(iOS) • パフォーマンス・表現の幅が向上 • テクスチャサンプル数が16に増加
  32. 32. #UE4CEDEC ProtoStarデモ • SamsungとEpicの共同開発 • ターゲット:Galaxy S7 • Vulkan API使用 • 1080p、30fps
  33. 33. #UE4CEDEC インタラクティブな反射表現 • 反射を行う平面を指定 • リフレクションキャプチャによって リアルタイムに反射を表現
  34. 34. #UE4CEDEC リフラクション(屈折) • 水やガラスといった 光が屈折するマテリアル表現 • マテリアルで屈折度などの パラメータを指定
  35. 35. #UE4CEDEC GPUパーティクル • パーティクル位置、速度を GPUで計算 • ベクターフィールドにも対応 注意: コリジョンは未サポート
  36. 36. #UE4CEDEC ダイナミックな影描画 • 動的オブジェクトに対する 影の描画 • ディレクショナルライト(平行光源)が シーンに必要 2つの手法 • 変調シャドウ • Cascade Shadow Map
  37. 37. #UE4CEDEC 動的オブジェクトの影: 変調シャドウ 固定平行光源に対する影 影の形状を周りに投影 利点 • 投影する時の色を指定できる • 処理が軽い 欠点 • シーンに焼きこまれた影とは馴染まない
  38. 38. #UE4CEDEC 動的オブジェクトの影: Cascade Shadow Map+ 固定平行光源 • 事前計算による影と、 動的オブジェクトの影が 馴染むようにブレンド • ProtoStarデモも この組み合わせを使用!
  39. 39. #UE4CEDEC 動的オブジェクトの影: Cascade Shadow Map+ 固定平行光源 • 事前計算による影と、 動的オブジェクトの影が 馴染むようにブレンド • ProtoStarデモも この組み合わせを使用!
  40. 40. #UE4CEDEC 完全にダイナミックな影: Cascade Shadow Map + 動的平行光源 ライティングをすべて動的に処理 利点 • ランタイム実行時に ライト方向、強さなどを変更可能 • 事前計算のライティングデータがない • メモリ使用量とパッケージサイズの削減 欠点 • すべてのシーン内オブジェクトに対して 影計算を行うため描画コストが増加
  41. 41. #UE4CEDEC 動的ポイントライトによるライティング • プロジェクト設定のMax Movable Point Light(動的ライト最大数)を 0より大きくすることで使用可能 • 使用用途例: 爆発や閃光といった、 エフェクトのアクセント • 影は落ちない • シェーダが追加生成されることに注意
  42. 42. #UE4CEDEC ライティングチャンネル • 同じチャンネルのオブジェクトにのみ 選択的にライトを適用できる • モバイルでは4.13からサポート
  43. 43. #UE4CEDEC モバイルで利用できるポストプロセスエフェクト • ブルーム • トーンマッパー • 被写界深度 • 自動露光 • ポストプロセスマテリアル (カスタムポストプロセス) • アンチエイリアスなど
  44. 44. #UE4CEDEC ポストプロセス: 高品質被写界深度
  45. 45. #UE4CEDEC ポストプロセス: 映画的トーンマッパー • アーティスティックな表現が可能なカラーグレーディング効果
  46. 46. #UE4CEDEC ポストプロセス:ポストプロセスマテリアル • ノードベースの マテリアルエディタで 新しいポストプロセス エフェクトを作成可能
  47. 47. #UE4CEDEC ポストプロセス: カスタムデプス • 指定したオブジェクトを 独自の深度バッファに描画 • カスタムエフェクト例 • アウトライン表示 • 他のオブジェクトで 隠されたメッシュの描画
  48. 48. #UE4CEDEC ポストプロセス: カスタムステンシル • カスタムデプスの 拡張のようなもの • 書き込む値を指定可能 • カスタムエフェクト例: 色指定付きアウトライン 表示など
  49. 49. #UE4CEDEC モバイル向けの最新レンダリング機能まとめ • ハイエンド向けの ES3.1設定の開発が可能に • 機能追加が進んでいて、 リッチなグラフィックを モバイルでも実現できます! • 反射 • リアルタイムの影 • GPUパーティクル • ポストプロセスの強化
  50. 50. #UE4CEDEC NEW! Desktop-Class Forward Renderer on iOS (実験段階) 既存のモバイルレンダラよりも 高クオリティな表現が可能なForwardレンダラ • UE4.18より実験的機能として追加 • サポート環境 • iOS10.3以降, A9 以上 • 推奨環境: • iOS11, A10X 以上 Wingnut AR ( WWDC 2017 ) https://youtu.be/S14AVwaBF-Y
  51. 51. #UE4CEDEC NEW! Desktop-Class Forward Renderer on iOS (実験段階) プロジェクト設定 → Platforms → iOS → Rendering → Metal Desktop-Forward Renderer
  52. 52. #UE4CEDEC アウトライン • PC開発環境とモバイル開発環境の違い • モバイル向けの最新レンダリング機能の紹介 • モバイル開発でよく使うあの機能、UE4のどこにあるの? • UE4.18における モバイルに関する更新 • モバイル開発あるある問題とその対策・Tips紹介
  53. 53. #UE4CEDEC • モバイルプレビュー機能 • Android / iOS の プラットフォーム対応 • ゲーム内広告・アナリティクス • コンテンツアップデート • その他 モバイル開発でよく使うあの機能 in UE4
  54. 54. #UE4CEDEC モバイルプレビュー機能 モバイル用レンダラをエミュレートし エディタ上で描画結果を確認 • エディタを再起動することなく ツールバーから簡単に切替可能 • OpenGL ES3.1, Vulkan, Metalに対応済 公式ドキュメント:モバイルプレビュア
  55. 55. #UE4CEDEC New! Improvements to "Device Mobile Preview“ 特定のデバイスにおけるハード性能・設定をより細かくエミュレート • 画面解像度 • GPU機能 • デバイスプロファイル(後述) などなど
  56. 56. #UE4CEDEC New! Improvements to "Device Mobile Preview“ 対象デバイス設定は自由に編集・追加可能 • Engine¥Content¥Editor¥PIEPreviewDeviceSpecs エディタ設定の Enable mobile PIE with preview device launch options
  57. 57. #UE4CEDEC 注意! 最終的なチェックは必ず実機上で行うこと! • 特定の端末ではエディタと異なる描画結果になる可能性がある モバイルプレビュー機能は 「作業の方向性の確認」として使うことを推奨 なんかちゃうやん… よっしゃ、調整完璧や!
  58. 58. #UE4CEDEC • モバイルプレビュー機能 • Android / iOS の プラットフォーム対応 • ゲーム内広告 • コンテンツアップデート • その他 モバイル開発でよく使うあの機能 in UE4
  59. 59. #UE4CEDEC Android / iOS プラットフォーム対応 基本的な機能は全てエンジン側で実装済み! • Blueprintのノード、C++関数を提供 プラットフォーム・ストアの違いを意識しなくてもいい作りに!
  60. 60. #UE4CEDEC 今回は話さないこと 各プラットフォームにおける登録・設定作業 • Google Play Console ヘルプセンター • iTunes Connect UE4側での初期セットアップ・ プラットフォームとの連携作業 • Android クイックスタート • iOS クイックスタート
  61. 61. #UE4CEDEC ログイン・ログアウト Blueprintのみで実装可能!(もちろん、C++でも)
  62. 62. #UE4CEDEC アプリ内課金(In-App Purchase) Blueprintのみで実装可能!(もちろん、C++でも) • 引数に指定するアイテムIDを プラットフォーム間で合わせておくと 実装の共通化が楽! 公式ドキュメント: アプリ内課金の使用方法
  63. 63. #UE4CEDEC リーダーボード Blueprintのみで実装可能!(もちろん、C++でも) • 引数に指定するアイテムIDを Android, iOSで合わせておくと 以下略 公式ドキュメント: モバイルサービスの リーダーボードの使用方法
  64. 64. #UE4CEDEC アチーブメント(実績) Blueprintのみで実装可能!(もちろん、C++でも) • 引数に指定するアイテムIDを 以下略 公式ドキュメント: モバイルサービスの アチーブメントの使用方法
  65. 65. #UE4CEDEC プッシュ通知 (ローカル) Blueprintのみで実装可能!(もちろん、C++でも) • バッジ対応は…現状はiOSのみ
  66. 66. #UE4CEDEC プッシュ通知 (リモート) ゲーム内で必要となる処理・イベントはBlueprint ・ C++で用意 • リモート通知サービスとのやり取りは 各サービスに対応したプラグイン内で行われる
  67. 67. #UE4CEDEC UE4が標準対応しているリモート通知サービス Android • Google Cloud Messaging (UE4.16) • Firebaseコンソールで発行される Legacy Server keyを指定する形式 iOS • Apple Push Notification Service ( Sandbox )
  68. 68. #UE4CEDEC 少し補足タイム (脱線とも言う)
  69. 69. #UE4CEDEC Firebaseってなに? Googleが運営しているバックエンドサービス サポートしている機能 • モバイルアナリティクス • プッシュ通知 • パフォーマンス解析 • クラッシュレポート などなど 現時点のUE4では未対応… • UE4.19で Test Lab( クラウドベースのアプリテスト基盤 ) 機能には対応予定
  70. 70. #UE4CEDEC 今のUE4 (4.18) でFirebaseを使うには? Firebase C++ SDKを自力インテグレートする • クラウドメッセージ機能を移植した事例があるが… 「Ultimate Mobile Kit Firebase」を使う • マーケットプレイスにて 174.99ドル で販売中 • 最新バージョンへの対応が非常に早い • 全ソースコード付き
  71. 71. #UE4CEDEC マーケットプレイスのアセットの利用規約について • すべて商用利用・改変可能 • 利用・共有範囲について • 購入者(個人・会社)が所属する全プロジェクトで利用可能 • 購入者の所属プロジェクトに関わる開発者・会社間で共有可能 • その他 • 著作権に関する問題はEpicGames内でレビュー済み • 記載がない限り、権利表記は不要 (表記すると製作者は嬉しいので是非!) • 公式サイト マーケットプレイス FAQページ
  72. 72. #UE4CEDEC 脱線おわり
  73. 73. #UE4CEDEC • モバイルプレビュー機能 • Android / iOS の プラットフォーム対応 • ゲーム内広告・アナリティクス • コンテンツアップデート • その他 モバイル開発でよく使うあの機能 in UE4
  74. 74. #UE4CEDEC バナー広告 Blueprintのみで実装可能!(もちろん、C++でも) 公式ドキュメント: インゲーム広告の使用方法 え、私の給料少なすぎ!? 話題のスマホRPGが・・・
  75. 75. #UE4CEDEC インターステイシャル広告 (全面広告) Blueprintのみで実装可能!(もちろん、C++でも) • ただし、Androidのみ(iOSは未対応) ダウンロード なう!
  76. 76. #UE4CEDEC 動画広告( Rewarded Video ) 残念ながら未対応… • みなさまの熱いリクエストをお待ちしております! 動画見ると 30コインGet!
  77. 77. #UE4CEDEC 広告表示用プラグインの紹介 Universal Mobile Ads (149.99ドル) • 各広告タイプにAndroid / iOS 両対応 • 最新バージョンへの対応が非常に早い • 全ソースコード付き
  78. 78. #UE4CEDEC インゲーム アナリティクス (解析ツール) ゲーム内で必要となる処理・イベントはBlueprint ・ C++で用意 • サービスとのやり取りは 各サービスに対応したプラグイン内で行われる 公式ドキュメント ブループリントアナリティクスプラグイン
  79. 79. #UE4CEDEC UE4が標準対応しているサービス • Flurry • https://developer.yahoo.com/analytics/ • UE4公式ドキュメントの解説ページ • Apsalar • https://apsalar.com/ • UE4公式ドキュメントの解説ページ • Adjust • https://www.adjust.com/
  80. 80. #UE4CEDEC マーケットプレイスで販売されているアセット • Google Analytics Provider (54.99ドル) • GameAnalytics (無料) • Chartboost Plugin (無料) • Ultimate Mobile Kit Firebase (174.99ドル)
  81. 81. #UE4CEDEC • モバイルプレビュー機能 • Android / iOS の プラットフォーム対応 • ゲーム内広告・アナリティクス • コンテンツアップデート • その他 モバイル開発でよく使うあの機能 in UE4
  82. 82. #UE4CEDEC コンテンツの追加・更新について 運営型ゲームにおいて コンテンツアップデートに掛かるコストは重要! アセット間の依存関係DLサイズによる負荷人 / 時間的コスト
  83. 83. #UE4CEDEC まず結論から プロジェクト・更新内容に適した作業フローを柔軟に構築可能です • 各パッケージタイプ (Release, Patch, DLC )を組み合わせる形 プロジェクト内の開発者の大半は を気にする必要ありません • 通常通りの、アセットベースのリソース管理で問題ありません コンテンツ開発中にパッケージをビルド・DL・解凍する必要はありません • ユーザにコンテンツを配信するためにパッケージを作る人と DLC内のアセットを間接参照する人 だけ気にして下さい
  84. 84. #UE4CEDEC まず結論から パッケージの作成・インストールは、専用ツール・機能を用意済みです • Project Launcher, Http Chunk Installer • モバイルパッケージングウィザード, Mobile Patch Utility Battle Breakersにおける実績 • 海外の一部地域にて配信中( 約半年 ) • ストアを介さずに 新キャラクターの追加を実現済み
  85. 85. #UE4CEDEC UE4におけるパッケージの種類 Release (本体) 1.0 1.1 Patch (差分・上書) 1.2 1.0 to 1.1 1.1 to 1.2 1.0 to 1.2 DLC (差分・拡張) 1.2 + DLC a1.0
  86. 86. #UE4CEDEC よくあるユースケース 新キャラクターを追加したい!
  87. 87. #UE4CEDEC Releaseの場合 • 作るの簡単!アセット間の依存関係問題もなし! • ストアにアップロードする必要あり • 大量のダウンロードをユーザに強制 1.0 1.1 1000MB ダウンロード発生!
  88. 88. #UE4CEDEC Patchの場合 • 作るの簡単!アセット間の依存関係問題もなし! • コンテンツアップデートの場合、ストアを経由する必要なし! • 必要に応じた最小限のダウンロード 1MBだけダウンロード 1.0 1.0.1 1.0 to 1.1
  89. 89. #UE4CEDEC さらにキャラクタを追加する場合 Patch に対して Patchを適用することはできません 1.0.1 1.0.2 1.0.1 to 1.2
  90. 90. #UE4CEDEC さらにキャラクタを追加する場合 前回のPatchを含むPatchを Releaseに適用 1.0 1.0.2 1.0 to 1.2 Patchを含んだReleaseに差し替え 1.0 1.2
  91. 91. #UE4CEDEC DLCの場合 • コンテンツアップデートの場合、ストアを経由する必要なし! • 必要に応じた、最小限のダウンロード • より自由度の高い作業フローを構築可能! 1.0 1.0 + DLC a1.0 DLC a1.0
  92. 92. #UE4CEDEC DLCの注意点 「Release が持つアセット」から 「DLCが持つアセット」 をハード(直接)参照することはできません Asset Registryを使って DLCが持つアセットをソフト(間接)参照する!
  93. 93. #UE4CEDEC Asset Registry さん はありますか? あるよ~どうぞ! やった! ないよ~ こんなイメージ ダウンロード! 公式ドキュメント アセットの参照 公式ドキュメント アセットレジストリ
  94. 94. #UE4CEDEC 各パッケージの利点・欠点を把握し 各プロジェクトにとって適切な手法を選びましょう!
  95. 95. #UE4CEDEC Release, Patch, DLCを作るには? Project Launcherを使う!
  96. 96. #UE4CEDEC Project Launcher Profile (パッケージング設定) を作成 • 対象となるレベル・バージョン情報 などなど アセット間の依存関係はこのツールが全て解決 • 指定したレベルに紐づくアセットのみをパッケージに Patch( DLC ) の作成で必要となる、 Releaseとの差分関係もこのツールが全て解決 • 指定バージョンから 変更・追加したアセットのみをパッケージに
  97. 97. #UE4CEDEC Release, Patch, DLCをインストールするには? Http Chunk Installer におまかせ! • Release, Patch, DLC全てに対応 • 必要に応じて、ゲームプレイ中に バックグランドでダウンロード・インストール可能 残念ながら、ドキュメントがまだ用意されていません… • Battle Breakersにおける活用例が UE4公式ブログにて後日紹介される予定です!
  98. 98. #UE4CEDEC 初回リソースダウンロード 必要最小限におさめたパッケージを各ストアにアップし、 初回起動時に残りのコンテンツを別途ダウンロード 50MB 50MB 800MB
  99. 99. #UE4CEDEC モバイルパッケージングウィザード 初回リソースダウンロード用の Release、DLC用Profileの作成支援機能 • レベル・テクスチャフォーマットを指定するだけ • 公式ドキュメントへのリンク
  100. 100. #UE4CEDEC Mobile Patch Utility ノード 初回リソースのダウンロード・インストール用のBPを用意 用意されている機能、かなり豊富です! • ダウンロード・インストール開始 • ダウンロード進捗状況の取得 • 各処理の成功・失敗イベント • 空き容量・Wifi接続の確認 などなど 公式ドキュメント Mobile Patch Utilityノード
  101. 101. #UE4CEDEC • モバイルプレビュー機能 • Android / iOS の プラットフォーム対応 • ゲーム内広告・アナリティクス • コンテンツアップデート • その他 モバイル開発でよく使うあの機能 in UE4
  102. 102. #UE4CEDEC Webブラウザ UMGで用意されている Web Browserウィジェットを使うだけ!
  103. 103. #UE4CEDEC キーボード テキストボックスにタッチすると自動的に表示・操作可能に UE4.16でバーチャルキーボード対応が追加 ( Androidのみ ) • アプリケーション独自のカスタマイズが可能に
  104. 104. #UE4CEDEC 動画再生 ( Media Framework 2.0 ) Android / iOSに標準対応 (もちろん他のプラットフォームにも) • オーディオ再生 ・ ストリーミング再生にも対応済 NEW! Media Framework 3.0をリリース • 様々な面で大幅改善 • メモリコピー無しでのレンダリング (Android限定)
  105. 105. #UE4CEDEC ここまでのまとめ 一昔前のUE4が弱かった モバイル開発特有の機能・サービスへの対応が整いました!
  106. 106. #UE4CEDEC ここまでのまとめ 一昔前のUE4が弱かった モバイル開発特有の機能・サービスへの対応が整いました! • モバイルプレビュー機能
  107. 107. #UE4CEDEC ここまでのまとめ 一昔前のUE4が弱かった モバイル開発特有の機能・サービスへの対応が整いました! • モバイルプレビュー機能 • 各プラットフォーム対応
  108. 108. #UE4CEDEC ここまでのまとめ 一昔前のUE4が弱かった モバイル開発特有の機能・サービスへの対応が整いました! • モバイルプレビュー機能 • 各プラットフォーム対応 • ゲーム内広告・アナリティクス
  109. 109. #UE4CEDEC ここまでのまとめ 一昔前のUE4が弱かった モバイル開発特有の機能・サービスへの対応が整いました! • モバイルプレビュー機能 • 各プラットフォーム対応 • ゲーム内広告・アナリティクス • コンテンツアップデート
  110. 110. #UE4CEDEC ここまでのまとめ 一昔前のUE4が弱かった モバイル開発特有の機能・サービスへの対応が整いました! • モバイルプレビュー機能 • 各プラットフォーム対応 • ゲーム内広告・アナリティクス • コンテンツアップデート • その他の痒い所への対応
  111. 111. #UE4CEDEC アウトライン • PC開発環境とモバイル開発環境の違い • モバイル向けの最新レンダリング機能の紹介 • モバイル開発でよく使うあの機能、UE4のどこにあるの? • UE4.18における モバイルに関する更新 • モバイル開発あるある問題とその対策・Tips紹介
  112. 112. #UE4CEDEC これまでに出てきた項目 • Desktop-Class Forward Renderer on iOS (実験段階) • Improvements to "Device Mobile Preview“ • Media Framework 3.0
  113. 113. #UE4CEDEC Apple ARKit iOS 11 Support iOS11のサポート • 実行ファイルが64bitのみに • Xcode9 に移行 ARKitの正式サポート • 実験段階のサポートだった4.17時点から 大幅に変更・改良 • パススルーカメラのロバスト性向上 • パフォーマンス・精度の向上
  114. 114. #UE4CEDEC Google ARCore Developer Preview Support Google AR Coreの 開発者向けプレビュー版への正式対応 • 実験段階のサポートだった4.17時点から変更・改良 • パススルーカメラの操作性向上など 現時点での正式対応デバイス • Google Pixel and Pixel XL • Samsung Galaxy S8 未サポート端末で動かす方法(自己責任)
  115. 115. #UE4CEDEC Apple ARKit / Google ARCoreを試すには 1. Apple ARKit / Google ARCore プラグインを有効に 2. プロジェクト設定の Start in ARを有効に 3. CameraComponentを持つ Pawnをレベル上に配置 4.18リリースノートにて サンプルプロジェクトを公開中
  116. 116. #UE4CEDEC Gradle Enabled by Default for Android 新しいビルドシステムである Gradle が デフォルトで有効に • 従来の Ant の利用は非推奨に
  117. 117. #UE4CEDEC Android Camera Plugin 前面・背面カメラへのアクセスが可能に • Android Camera Playerプラグイン • 有効にすると、プロジェクト設定に カメラ使用のパーミッションが追加
  118. 118. #UE4CEDEC Add Android cpu stats (stat AndroidCPU) CPUのコア周波数・コア使用率を表示 • 更新間隔は変更可能 CVar 'Android.CPUStatsUpdateRate‘
  119. 119. #UE4CEDEC Simplified iOS certificates and signing when using Remote Toolchain from PC WindowsからMacでリモートビルドする際、 Mac側での証明書の作成・インストールが 不要になりました!
  120. 120. #UE4CEDEC BPプロジェクトのiOSビルドフロー 証明書作成 (cer, p12) 証明書・プロビジョニングを UE4エディタで設定 + IPA作成 プロビジョニング作成 (.mobileprovision) or
  121. 121. #UE4CEDEC BPプロジェクトの場合 Apple Developer Programに登録済みなら WindowsのみでiOS開発が可能!
  122. 122. #UE4CEDEC C++プロジェクトの場合 Macは必須 • Xcodeでビルドする必要があるため おすすめのフロー 開発 :Windows ビルド :Macでリモートビルド
  123. 123. #UE4CEDEC C++プロジェクトのiOSビルドフロー( UE4.17以前 ) 証明書 作成・インストール 証明書・ プロビジョニング設定 プロビジョニング作成 リモートビルド
  124. 124. #UE4CEDEC UE4.17以前の問題点 Mac上で操作を行う必要がある • 初期の環境構築コストの増大 • Macの追加購入時 • 新規プロジェクトの開始時 • そもそも、ビルドマシンにしているMacは 基本的に放置しておきたい! 証明書の 作成・インストール
  125. 125. #UE4CEDEC UE4.18からは… C++プロジェクトでも Windows上で作業が完結! (ビルドマシンとしてのMacは必須)
  126. 126. #UE4CEDEC C++プロジェクトのiOSビルドフロー( UE4.18 ) 証明書作成 証明書・ プロビジョニング設定 プロビジョニング作成 リモートビルド
  127. 127. #UE4CEDEC UE4.17以前 UE4.18 WindowsからMacでリモートビルドする際、 Mac側での証明書の作成・インストールが 不要になりました! Simplified iOS certificates and signing when using Remote Toolchain from PC
  128. 128. #UE4CEDEC モバイル以外の更新も沢山! UE4.18 リリースノート Volumetric Lightmaps Clothing Tool
  129. 129. #UE4CEDEC アウトライン • PC開発環境とモバイル開発環境の違い • モバイル向けの最新レンダリング機能の紹介 • モバイル開発でよく使うあの機能、UE4のどこにあるの? • UE4.18における モバイルに関する更新 • モバイル開発あるある問題とその対策・Tips紹介
  130. 130. #UE4CEDEC 端末・スペックに応じた設定・調整をするには?
  131. 131. #UE4CEDEC モバイル開発における大きな悩みの一つ ユーザに注目されるよう、よりハイクオリティ・高グラフィックに…! VS より多くの人に遊んでもらえるよう、様々な端末・スペックに対応…! VS 何故かいつもスケジュールに余裕がない…
  132. 132. #UE4CEDEC なので 各端末・スペックに応じて 適切な設定・調整を より簡単かつ効率的に行う必要があります UE4にはそれを支援する機能が 用意されています!
  133. 133. #UE4CEDEC 端末・スペックに応じた設定・調整をするには? • デバイスプロファイル • Feature Level Switch / Quality Switch • UMGの解像度別対応
  134. 134. #UE4CEDEC デバイスプロファイル GPU, SoC, デバイスモデル別のプリセット毎に 各種パラメータ・設定を調整可能 • CVar( Console Variables ) • Texture LOD Group
  135. 135. #UE4CEDEC CVar ( Console Variables ) 各機能の設定・クオリティを調整 例えば • 解像度のスケーリング係数 • 各ポストプロセスのクオリティ • ネットワーク同期回数の上限設定 • デバッグ表示のONOFF
  136. 136. #UE4CEDEC CVarのリスト・検索ページ エディタから開くことが可能
  137. 137. #UE4CEDEC Texture LOD Group テクスチャのLOD( MipMap )の設定をグループ毎に一括変更
  138. 138. #UE4CEDEC 端末・スペックに応じた設定・調整をするには? • デバイスプロファイル • Feature Level Switch / Quality Switch • UMGの解像度別対応
  139. 139. #UE4CEDEC Feature/Quality Level に応じたマテリアル最適化 Feature / Quality Level 毎に 異なるマテリアルを組むことが可能 • Feature Level • Quality Level • Low, Medium, Highの 3段階
  140. 140. #UE4CEDEC 注意 マテリアルに配置されたテクスチャは ゲーム内での使用・未使用問わず cookされます ( =パッケージに含まれます ) 全てパッケージに含まれる!
  141. 141. #UE4CEDEC Quality Switchの落とし穴 各Quality Levelにおけるシェーダが「全て」メモリに載ります • 使用していない Quality Levelのシェーダは載せない設定があるけど… シェーダのロード時間は改善されないので注意
  142. 142. #UE4CEDEC Feature / Quality Level Switchを使う際は Switchによる処理分けが本当に必要なのか要検討 • プロファイルして、その判断が適切か確認! • デバイスプロファイルによる調整では不十分なのか? 落とし穴を理解した上で、運用フローを構築する! • レギュレーションの策定 • 定期的なチェック作業
  143. 143. #UE4CEDEC 端末・スペックに応じた設定・調整をするには? • デバイスプロファイル • Feature Level Switch / Quality Switch • UMGの解像度別対応
  144. 144. #UE4CEDEC 解像度に応じたUIの調整機能 DPIスケーリング • 解像度に応じた自動スケーリングサポート • カーブを編集することでスケーリングを調整 アンカー • 解像度変更時の 配置・ストレッチングのルールを制御 • 用意されたプリセット or カスタマイズ
  145. 145. #UE4CEDEC エディタ上でのスクリーンサイズ設定 代表的なデバイスの解像度に応じた プリセットを用意 ( 縦・横 両対応 ) • 特殊デバイス向けに解像度の指定も可能
  146. 146. #UE4CEDEC 4.17から ドラッグで動かせて 可視化されるように! 超わかりやすい!
  147. 147. #UE4CEDEC 端末・スペックに応じた設定・調整をするには? • デバイスプロファイル • 各ハードに応じたプリセット毎に 各種パラメータ・設定を調整
  148. 148. #UE4CEDEC 端末・スペックに応じた設定・調整をするには? • デバイスプロファイル • 各ハードに応じたプリセット毎に 各種パラメータ・設定を調整 • Feature Level Switch / Quality Switch • 端末・スペック・設定に応じたマテリアル調整
  149. 149. #UE4CEDEC 端末・スペックに応じた設定・調整をするには? • デバイスプロファイル • 各ハードに応じたプリセット毎に 各種パラメータ・設定を調整 • Feature Level Switch / Quality Switch • 端末・スペック・設定に応じたマテリアル調整 • UMGの解像度別対応 • DPIスケーリング, アンカー • スクリーンサイズ
  150. 150. #UE4CEDEC バッテリー消費・発熱を抑えたい!
  151. 151. #UE4CEDEC バッテリー消費・発熱を無視すると… コンテンツの寿命を大きく縮めることに…! 例えば • ユーザの継続率への影響 • 熱によりパフォーマンスが低下し…という悪循環
  152. 152. #UE4CEDEC バッテリー消費・発熱問題を解決するには? • 端末・スペックに応じた設定・調整を行う • コンテンツのクオリティを落とさずに パフォーマンスを改善・維持する最適化方法を、 ? 調査し、選択する
  153. 153. #UE4CEDEC 大前提 「最適化」 は 「コンテンツのクオリティを落とすこと」 ではない 適切なプロファイリングを行い、 どんな対応をするか選択しましょう!
  154. 154. #UE4CEDEC 適切なプロファイルのやり方 [CEDEC2017] UE4プロファイリングツール総おさらい (グラフィクス編) https://www.slideshare.net/EpicGamesJapan/cedec2017-ue4 https://youtu.be/EtnXVj8D25M
  155. 155. #UE4CEDEC 各ハードウェア会社が提供しているツール GPUプロファイリング • Apple : Xcode GL Debugger ( and Metal ) • Qualcomm : Adreno Profiler • 配布サイト, Answerhub 関連スレッド • NVIDIA : Tegra Graphics Debugger • 配布サイト, Answerhub 関連スレッド • ImgTec : PVRTune, PVRTrace • 公式解説動画 • ARM : Mali Graphics Debugger • UE4公式ブログにおける解説記事
  156. 156. #UE4CEDEC 各ハードウェア会社が提供しているツール CPUプロファイリング • Apple : Instruments ( Time Profiler ) • NVIDIA : Tegra System Profiler • 配布サイト, 公式ドキュメント • ARM : DS-5
  157. 157. #UE4CEDEC とあるプロジェクトで選択された バッテリー消費・発熱問題への対策を紹介 (モバイル特化版)
  158. 158. #UE4CEDEC 60fps上限ではなく、30fps上限にする
  159. 159. #UE4CEDEC GDC2015 Sustained Gaming Performance in Multi-Core Mobile Devices 発熱を抑えるためのスロットリングが発生
  160. 160. #UE4CEDEC GDC2015 Sustained Gaming Performance in Multi-Core Mobile Devices
  161. 161. #UE4CEDEC 60fps上限ではなく、30fps上限にする 高フレームレートを上限にした場合 消費電力・温度向上により、フレームレートを不安定になる • 「30fpsに抑えると,60fpsに対して40%も消費電力が低減できる」 http://www.4gamer.net/games/999/G999902/20150307011/ UE4で30fps上限を設定するには ConsoleVariables 「 t.MaxFPS 30 」
  162. 162. #UE4CEDEC GDC2015 Sustained Gaming Performance in Multi-Core Mobile Devices 30fps上限にしても、最終的には発熱がひどくなってくる…
  163. 163. #UE4CEDEC バッテリー消費・発熱を考慮したゲームデザイン 動的なシーン(アクション部分など)の後に 静的なシーン(リザルトなど)」 を 少し 挟むことで デバイスを冷却! t.MaxFPS 30 冷 → 熱 t.MaxFPS 10 熱 → 冷
  164. 164. #UE4CEDEC 描画解像度 と UI解像度を分ける
  165. 165. #UE4CEDEC 描画:低解像度 UI:高解像度 スマホの画面は高解像度ですが、画面自体の大きさは小さい • 描画解像度を下げて、その分を演出強化した方が見栄えがいい(場合がある) r.ScreenPercentage 10r.ScreenPercentage 100
  166. 166. #UE4CEDEC UIのキャッシング
  167. 167. #UE4CEDEC Invalidation PanelによるUMGの負荷軽減 • 子要素をキャッシュすることで 不要な描画・更新処理をキャッシュ(スキップ) • 子要素毎にキャッシュするか否かを指定することも可能 • Is Volatileフラグ あまり変化しない部分は 積極的にInvalidation Panelでキャッシュする • 変化する箇所はIs Volatileフラグを有効に
  168. 168. #UE4CEDEC Battle Breakersにおける高速化事例 Stat slateによる計測 • Invalidation panel使用前 • Processed : 573 • Invalidation panel使用後 • Processed : 231 • Cached:342 2倍以上の高速化を実現!
  169. 169. #UE4CEDEC Invalidation Panel用のデバッグ機能 • slate.InvalidationDebugging 1 • Green: キャッシュされたWidget • Blue : 子要素との 相対的な位置関係もキャッシュ • Dashed: キャッシュしないWidget • Red: invalidated widgets
  170. 170. #UE4CEDEC Retainer Boxによる描画負荷の分散 子要素をレンダーターゲットに描画することで、 描画頻度・タイミングを変更可能
  171. 171. #UE4CEDEC UMGに関する資料のご案内 猫でも分かるUMG https://www.slideshare.net/EpicGamesJapan/umg-80334310
  172. 172. #UE4CEDEC 本講演のまとめ
  173. 173. #UE4CEDEC UE4における基本機能の「一部」をご紹介 • ほぼ全ての機能がモバイル開発でも使える! • 非エンジニアが 「自分のアイデア」を「自分で実装」できる
  174. 174. #UE4CEDEC UE4のモバイルレンダラーはどこまでできる? • 様々な端末・ハードに対応済み • ES2.0 から ES3.1, Vulkan, Metalまで • ハイエンドモバイル向けの機能を数多くご用意
  175. 175. #UE4CEDEC モバイル開発で必須な機能が既に揃っている! • モバイル特有の機能への対応状況 • モバイル開発向けの作業を支援する様々な機能
  176. 176. #UE4CEDEC モバイルに関する最新情報をご紹介 • Apple ARKit, Google ARCoreへの正式対応 • BP / C++ プロジェクト共に、Windows上で作業が完結するように!
  177. 177. #UE4CEDEC モバイル開発におけるTipsの「一部」をご紹介 • 「端末・スペック」と「バッテリー・発熱」を考慮した パフォーマンス設定・調整を支援する機能の紹介 • 実際のプロジェクトで使われた最適化・改善テクニックをご紹介
  178. 178. #UE4CEDEC ご清聴 ありがとうございました! 本講演に関する質問はこちらからどうぞ! E-mail : kaz.okada@epicgames.com Twitter : @pafuhana1213 展示ブースにEGJのスタッフがいますので モバイル以外の質問も是非どうぞ!

×