パッケージ化した iOS 向けゲームのサイズ

パッケージ化された iOS ゲームのサイズを決める要因

Windows
MacOS
Linux

パッケージ化した iOS 向けゲームのサイズは、参照するコンテンツ、選択するビルド コンフィギュレーションなど、様々なものに影響されます。

ターゲット コンフィギュレーション

開発ではなくシッピング コンフィギュレーションをターゲットにするとサイズが大幅に変更され、31 MB も節約できます。Shipping コンフィギュレーションでは、デバッグ シンボルとロギングおよびプロファイリング コードの大部分を取り除くことで、実行ファイルのサイズを小さくします。

ゲーム コンテンツのリファレンス

ゲーム内で参照されるコンテンツはすべてクックする必要があることを十分理解してください。陥りやすいミスして、大きなテクスチャ、そうでなければ使用していないテクスチャをマテリアル関数あるいはマテリアルのテクスチャ サンプルのデフォルトとして参照したり、ブループリントで接続されていないノードまたは使用していない変数を参照することです。マテリアル インスタンスのすべてを他の何かに置換したとしても、これらは参照されたとみなされます。クックされたアセット フォルダの中に予期せぬアセットを見つけた場合は、リファレンス ビューア  を使って誰が参照しているか追跡します。

ツールバーの Launch ボタンでクックした場合、選択したマップから参照したコンテンツのみがクックされますが、プロジェクトをパッケージ化 した場合は、参照されていないものも含めてゲームのコンテンツがすべてクックされます。

スレートの無効化

コンテンツ専用プロジェクトの場合、使用中のプラグインとライブラリの想定ができないため、実行ファイルが大きくなります。ただし、コンテンツのみのゲームの場合、Slate は使用していないので、最適化を使用して 30 MB を超えるスレート アセットを削除します。スレートを使用しない C++ プロジェクトを作成する場合、Project.Target.csTargetRules クラスのコンストラクタで bUsesSlate = false を設定することで、このスペースを削除することができます。

Obj List

クリックしてフルサイズで表示。

このリストを使用して、メモリ消費の原因と適切な最適化を行うことができます。 

Low-Level Memory Tracker

Low-Level Memory Tracker (LLM) は、Unreal Engine Project のメモリの使用状況を追跡するツールです。LLM は、Unreal Engine とオペレーション システム (OS) によって割り当てられるすべてのメモリを記録するためにスコープのタグ システムを使います。LLM はメモリの状態を知る上で有用です。LLM の使用方法の詳細は、UE4 プロジェクトの LLM を使用して以下のドキュメントを確認してください。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback