Version: 2019.1
iOS ハードウェアガイド
iOS 2D テクスチャ オーバーライド

iOS Player Settings

このページでは、iOS に特化した Player 設定について説明します。一般的な Player 設定の説明については、Player 設定を参照してください。

注意 Unity iOS には iOS 7.0 以降が必須です。Unity は iOS 6.0 以前のバージョンをサポートしていません。

スタンドアロンの Mac Player 設定
スタンドアロンの Mac Player 設定

以下のセクションのプロパティーが説明されています。

Icon

Icon 設定を使用して、Apple Store でのアプリケーションのブランド設定をカスタマイズします。

ノート アイコンテクスチャがない場合、最も近いサイズのアイコンテクスチャがそのサイズに合わせてスケーリングされます (より解像度の高いテクスチャを優先します)。

設定 機能
Application icons 各 iOS デバイスのアプリケーションに表示するカスタム製のアイコンを指定します。
Spotlight icons 各 iOS デバイスのゲームの Spotlight 検索結果に表示するカスタム製のアイコンを指定します。
Settings icons 各 iOS デバイス自体の設定画面に表示するカスタム製のアイコンを指定します。
Notification icons ゲームにお知らせを送信するときに各 iOS デバイスで表示するカスタム製のアイコンを指定します。
Marketing icons 各 iOS デバイスで使用する App Store でゲームを表示するカスタム製のアイコンを指定します。

Resolution and Presentation

Resolution and Presentation セクションを使用して、画面の外観をカスタマイズします。

Resolution Scaling

iOS プラットフォームの Resolution Scaling 設定
iOS プラットフォームの Resolution Scaling 設定

Resolution Scaling Mode では、スケーリングをネイティブの画面解像度以下に設定できます。

  機能
FixedDPI デバイスの画面解像度を元の解像度より低くして、Target DPI プロパティーを適切に表示します。これを使用してパフォーマンスとバッテリー寿命を最適化したり、特定の DPI 設定をターゲットにします。
Disabled スケーリングが適用されず、ゲームがネイティブの画像解像度にレンダリングされるようにします。

ゲーム画面の Target DPI を設定します。デバイスのネイティブの画面 DPI がこの値よりも高い場合、Unity はゲーム画面をこの設定に合わせて縮小します。スケールは min(Target DPI * Factor / Screen DPI, 1) で計算されます。 Factor は、Quality 設定の Resolution Scaling Fixed DPI Factor によって制御されます。

注意 このオプションは、Resolution Scaling ModeFixed DPI に設定されている場合にのみ表示されます。

Orientation

iOS プラットフォーム向けの Orientation 設定
iOS プラットフォーム向けの Orientation 設定

Default Orientation ドロップダウンからゲームの画面の向きを選択します。

設定 機能
Portrait ホームボタンが下部に表示されます。
Portrait Upside Down ホームボタンが上部に表示されます。
Landscape Left ホームボタンが右側に表示されます。
Landscape Right ホームボタンが左側に表示されます。
Auto Rotation 画面の向きはデバイスの向きに応じて変化します。これがデフォルトです。

ノート この設定は iOS と Android デバイスで共通です。

画面の向きを Auto Rotation に設定すると、Allowed Orientations for Auto Rotation セクションが表示されます。

Use Animated Autorotation 設定を有効にすると、単に切り替わるだけでなくアニメーションさせます。 Default OrientationAuto Rotation に設定されている場合のみ効力があります。

Allowed Orientations for Auto Rotation

このセクションは Default OrientationAuto Rotation に設定されている場合にのみ表示されます。

iOS プラットフォームの Auto Rotation 設定に使用可能な向き
iOS プラットフォームの Auto Rotation 設定に使用可能な向き

Auto Rotation は画面の向きをデバイスに合わせて変更するため、可能な画面の向きを制限できます (例えば、デバイスを横向きにロックするなど)。

このセクションのボックスにチェックを入れると、向きを有効にできます。

設定 機能
Portrait 縦向きが可能。
Portrait Upside Down 縦向き (逆さ) が可能。
Landscape Right 横向き (右) (ホームボタンが にある状態) が可能。
Landscape Left 横向き (左) (ホームボタンが にある状態) が可能。

Multitasking Support

iOS プラットフォームの Multitasking Support 設定
iOS プラットフォームの Multitasking Support 設定

フルスクリーンモードでゲームを実行する必要がある場合は、Requires Fullscreen を有効にします。

Status Bar

iOS プラットフォームの Status Bar 設定
iOS プラットフォームの Status Bar 設定
設定 機能
Status Bar Hidden Enable this option to hide the status bar when the application launches.
Status Bar Style アプリケーション起動時のステータスバーのスタイルを指定します。選択肢には DefaultBlack TranslucentBlack Opaque があります。
Disable Depth and Stencil これを有効にすると、深度バッファとステンシルバッファが無効になります。
Show Loading Indicator ローディングインジケーターの表示方法を選択します。選択肢は Don’t ShowWhite LargeWhiteGray です。

Splash Image

Player 設定 では、共通の Splash Screen 設定の上方で iOS プラットフォーム用の スプラッシュ画像を指定できます。

iOS プラットフォームの Splash 設定
iOS プラットフォームの Splash 設定

Virtual Reality Splash Image プロパティーを使用して、Virtual Reality ディスプレイに表示するカスタムのスプラッシュ画像を選択します。

スプラッシュスクリーンの共通の設定の下方で、UseStoryboard for Launch を有効にすると、CustomStoryboard ボタンが表示されます。

iOS Playerプラットフォームで Storyboard を起動画面に使用
iOS Playerプラットフォームで Storyboard を起動画面に使用

ボタンをクリックすると、デバイス上でゲームが起動するときに表示するストーリーボードを選択できます。ストーリーボードをここに表示するには、最初に Xcode でストーリーボードを作成し、それをプロジェクトにコピーする必要があります。

代わりに、Use Storyboard for Launch オプションを無効のままにして、スプラッシュ画像を Launch Screen (起動画面) または Legacy Launch Images (古い起動画像) のいずれかの方法で実装することもできます。

iOS Player プラットフォームで Launch Screen または Legacy Launch Images を指定
iOS Player プラットフォームで Launch Screen または Legacy Launch Images を指定

Launch Screens

Launch Screen は iOS がデバイス上で動的にスプラッシュスクリーンを作成する XIB ファイルです。ただし、いくつかの制限があります。

  • iPad デバイスの向きに応じて異なるコンテンツを表示することはできません。

  • すべての iPhone は横向きの Launch Screens をサポートします。ただし、iOSのバグのために、特定の iOS バージョンでは Landscape Right の代わりに Landscape Left が表示されます。

それぞれの iPhone Launch ScreeniPad Launch Screen セクションで、Launch Screen type ドロップダウンメニューから起動画面の種類を選択できます。

  機能
Default 起動画像と非常によく似た起動画面。横向き縦向きで 1 つの画像が選択されます。選択の優先順位は、iPhone 6+ の起動画像、モバイル共有の起動画像、iPhone 6+ のデフォルトの Unity 起動画像。画像は Aspect Fill モードで表示されます。
None まるで、起動画像のみを使用したような動作になります。
Image and background (relative size) 中央揃えの画像を表示し、残りの領域は透明でない色で塗りつぶします。画像サイズは、画面サイズに対するユーザー指定のパーセンテージで、小さい方のサイズ (横向きの場合は縦の長さ、縦向きの場合は横の長さ) で計算されます。ユーザーはまた、横向きと縦向きの背景色と画像を指定します。画像の選択順は、ユーザーが指定した画像、共有モバイルの起動画像、iPhone 6 以降のデフォルトのUnity起動画像、の順です。画像は Aspect Fill モードで表示されます。
Image and background (constant size) ほぼ Image with background (relative size) オプションと同じですが、ユーザーが画像サイズをポイント数で指定する点が異なります。
Custom XIB 任意の場所からユーザーが指定したXIBファイル

ノート Unity Personal のサブスクリプションでは、選択したスプラッシュスクリーンに加えて、エンジンが初期化されるとすぐに Unity スプラッシュスクリーン が表示されます。

Legacy Launch Images

Launch Images は画面全体を占有する静的なスプラッシュスクリーン画像です。アセットカタログ ( Images.xcassets/LaunchImage) で定義することができます。サポートされているサイズと向きの組み合わせごとに Launch Screen を追加します。

設定 機能
Mobile Splash Screen iOS のスプラッシュスクリーンに使用するテクスチャを指定。標準のスプラッシュスクリーンサイズは 320x480 (このサイズは Android と iOS で共通です)。
iPhone 3.5"/Retina iOS 3.5" Retina のスプラッシュ画面に使用されるべきテクスチャを指定。スプラッシュ画面サイズは 640x960。
iPhone 4"/Retina iOS 4" Retina のスプラッシュ画面として使用されるべきテクスチャを指定。スプラッシュ画面サイズは640x1136。
iPhone 4.7"/Retina iOS 4.7" Retina のスプラッシュ画面で使用するテクスチャを指定。スプラッシュ画面サイズは750x1334。
iPhone 5.5"/Retina iOS 5.5" Retina のスプラッシュ画面で使用するテクスチャを指定。スプラッシュ画面サイズは1242x2208。
iPhone 5.5" Landscape/Retina iOS 5.5" Retina の横向きスプラッシュ画面で使用するテクスチャを指定。スプラッシュ画面サイズは2208x1242。
iPhone X\Retina iPhone X Retina のスプラッシュスクリーンで使用するテクスチャを指定。スプラッシュスクリーンサイズは 1125x2436。
iPhone X Landscape\Retina iPhone X Retina の横向きスプラッシュスクリーンで使用するテクスチャを指定。スプラッシュスクリーンサイズは 2436x1125。
iPad Portrait iPad の縦向きのスプラッシュスクリーンとして使用するテクスチャを指定。標準のスプラッシュスクリーンサイズは768x1024。
iPad Landscape iPad の横向きのスプラッシュスクリーンとして使用するテクスチャを指定。標準のスプラッシュスクリーンサイズは1024x768。
iPad Portrait/Retina iPad Retina の縦向きのスプラッシュスクリーンとして使用するテクスチャを指定。標準のスプラッシュスクリーンサイズは1536x2048。
iPad Landscape/Retina iPad Retina の横向きのスプラッシュスクリーンとして使用するテクスチャを指定。標準のスプラッシュスクリーンサイズは2048×1536。

iPhone 6 以上のみが横向きに対応しています。他の iPhone は縦向きのみ使用できます。

Launch Images は以下の順序で選択されます。

  • テクスチャが設定されている場合は、特定の Launch Image によってオーバーライドされます。
  • デフォルトの Unity スプラッシュスクリーン起動画像

ビルドに対し、すべての Launch Images を設定する必要があります。

Debugging and crash reporting

iOS プラットフォームのデバッグとクラッシュレポート
iOS プラットフォームのデバッグとクラッシュレポート
設定 機能
Enable Internal Profiler (Deprecated) アプリケーションのパフォーマンスデータを収集し、コンソールにレポートを表示する内部プロファイラーを有効にします。レポートは毎フレーム動作する Unity のサブシステムを記録するためミリ秒単位で表示されます。データは 30 フレームの平均になります。
On .Net UnhandledException .NET で処理されない例外の場合に取られるアクションを選択します。オプションは Crash (アプリケーションがクラッシュすることはほとんどありません。アプリケーションのユーザーは iOS に iTunes に送信できるクラッシュレポートを生成させ、開発者が検査することができます) と Silent Exit (アプリケーションを正常終了します) です。
Log Obj-C Uncaught Exceptions カスタム製の Objective-C Uncaught Exception ハンドラーを有効にして、例外情報をコンソールに表示します。
Enable Crash Report API カスタム製のクラッシュレポーターを有効にして、クラッシュ情報を取得します。クラッシュログは CrashReport API 経由で利用可能です。

Other Settings

Other Settings のセクションでは、以下のグループに分類されたさまざまなオプションをカスタマイズできます。

Rendering

これらの設定を使用して、iOS プラットフォーム向けにゲームをレンダリングする方法をカスタマイズします。

iOS プラットフォームの Rendering Player 設定
iOS プラットフォームの Rendering Player 設定
設定 機能
Color Space レンダリングに GammaLinear どちらの色空間を使用するかを選択します。
2 つの色空間の違いの説明は リニアレンダリングの概要 を参照してください。
Auto Graphics API これを無効にすると、グラフィックス API を手動で選択して並べ替えることができます。デフォルトでは、このオプションは有効になっており、Unity に Metal が含まれ、GLES2 は Metal がサポートされない場合の代替として使用されます。
Color Gamut レンダリングに使用する iOS プラットフォームの 色域 を追加または削除できます。プラス (+) アイコンをクリックすると、使用可能な色域のリストが表示されます。色域は、特定のデバイス (モニタやスクリーンなど) で使用可能な色の範囲を定義します。sRGB 色域はデフォルトの (また必要な) 色域です。
最近の iOS デバイスを広色域ディスプレイでターゲットとする場合は、DisplayP3 を使用してフルディスプレイ機能を活用します。古いデバイス用の代替として Metal Editor Support を使用します。
Metal Editor Support これを有効にすると、Metal API を Unity エディターで使用し、Metal API をターゲットとしたよりシェーダーの速いイテレーションを自在に行えます。
Metal API Validation シェーダーの問題をデバッグする必要がある場合は、このオプションを有効にします。
ノート 検証は CPU 使用率を増加させます。そのため、デバッグにのみ使用してください。
Metal Write-Only Backbuffer デフォルトではないデバイスの向きでパフォーマンスを向上させます。これにより、バックバッファに frameBufferOnly フラグを設定します。これは、バックバッファからの読み直しを防ぎますが、ドライバ-の最適化が可能になることもあります。
Force hard shadows on Metal これを有効にすると、Metal のシャドウのポイントサンプリングを強制的に使用します。これによりシャドウ品質が低下し、よりよいパフォーマンスが得られます。
Memoryless Depth いつ メモリレスレンダーテクスチャ を使用するかを選択します。メモリレスレンダーテクスチャはレンダリング時に、CPU や GPU メモリではなく、タイル上のメモリに一時的に格納されます。これにより、アプリケーションのメモリ使用量が削減されますが、これらのレンダーテクスチャを読み書きすることはできません。
ノート メモリレスレンダーテクスチャは、iOS、tvOS 10.0以降、Metal、Vulkan でのみサポートされます。レンダーテクスチャは読み取り/書き込み保護され、他のプラットフォームの CPU や GPU メモリに保存されます。
Unused メモリレスフレームバッファ深度を決して使用しません。
Forced 常にメモリレスフレームバッファ深度を使用します。
Automatic メモリレスフレームバッファ深度をいつ使用するかは Unity が決定します。
Multithreaded Rendering マルチスレッドレンダリングを使用するには、これを有効にします。これは Metal でのみサポートされています。
Static Batching 静的バッチ処理 を使用するには、これを有効にします。
Dynamic Batching ビルドで 動的バッチング を使用するには、これを有効にします (デフォルトでは有効)。
ノート 動的バッチングは、スクリプタブルレンダーパイプライン がアクティブな場合は効力がありません。そのため、この設定は、Graphics 設定の Scriptable Render Pipeline Asset で何も設定されていない場合にのみ表示されます。
Compute Skinning Enable this option to use DX11/ES3 GPU compute skinning, which frees up CPU resources. To learn more about GPU compute skinning, see the Wikipedia page on skeletal animation.
Graphics Jobs (Experimental) これを有効にすると、Unity がグラフィックスタスク (レンダリングのループ) を他の CPU コア上で動作するワーカースレッドにオフロードします。これは、しばしばボトルネックとなるメインスレッドの Camera.Render で費やされる時間を短縮する目的で行われます。
ノート この機能は実験的です。プロジェクトのパフォーマンスが向上しない場合があり、クラッシュの原因になる可能性があります。
現在、Unity は、Vulkan を使用している時のみグラフィックスジョブをサポートします。そのため、この設定は、OpenGL ES を使用しているときには効力がありません。
Lightmap Encoding ライトマップのエンコードを設定するには、Normal QualityHigh Quality を選択します。この設定は、ライトマップのエンコードスキームと圧縮形式に影響します。
Lightmap Streaming Enabled Enable this option to load only the lightmap mipmaps as needed to render the current game Cameras. This value applies to the lightmap textures as they are generated.
Note: To use this setting, you must enable the Texture Streaming Quality setting.
Streaming Priority Set the lightmap mipmap streaming priority to resolve resource conflicts. As these values generate, Unity applies them to the light map textures.
Positive numbers give higher priority. Valid values range from –128 to 127.
Enable Frame Timing Stats これを有効にすると、CPU/GPUフレームタイミング統計を収集します。

Identification

iOS プラットフォームの Identification 設定
iOS プラットフォームの Identification 設定
設定 機能
Bundle Identifier ビルドするゲームやプロダクトのプロビジョニングプロファイルを入力します。識別子の基本的な構造は com.CompanyName.ProductName です。この構造は、住んでいる国によって異なる場合があります。そのため、常に、開発者アカウント用に Apple から提供された文字列をデフォルトにしてください。ProductName はプロビジョニング証明書に設定されます。
この値は関連する info.plist ファイルに CFBundleIdentifier として表示されます。詳しくは Apple 開発者のドキュメント CFBundleIdentifier を参照してください。
ノート: これは、iOS、tvOS、Android で共有されます。
Version バンドルの “リリース-バージョン-番号” の文字列を入力します (例えば、4.3.6)。関連する info.plist ファイルに CFBundleShortVersionString として表示されます。
詳しくは、Apple Developerドキュメントの CFBundleShortVersionString を参照してください。
Build アプリケーションのこのバージョンのビルド番号を入力します。関連する info.plist ファイルに CFBundleVersion として表示されます。

詳しくは、Apple Developer のドキュメントで CFBundleVersion を参照してください。 
Signing Team ID Apple Developer Team IDを入力します。詳しくは、Apple Developer ウェブサイトの Xcode ヘルプ を参照してください。これにより、生成された Xcode プロジェクトの Team ID が設定され、開発者は Build and Run 機能を使用できるようになります。ここでは、アプリケーションの自動署名のためには Apple Developer Team ID をここで設定する必要があります。詳細は、Creating Your Team Provisioning Profile を参照してください。
Automatically Sign Xcode がビルドに自動的に署名するようにするには、これを有効にします。

Configuration

iOSプラットフォームの Configuration 設定
iOSプラットフォームの Configuration 設定

AAPI 設定

BApple 固有の情報

Cデバイス情報

Dアプリケーションスライスのバリアントマップ

Eその他の設定

API設定

iOSプラットフォームのAPI設定
iOSプラットフォームのAPI設定
設定 機能
Scripting Runtime Version プロジェクトで使用する .NET ランタイムを選択します。詳細は、Microsoft の .NET ドキュメント を参照してください。
.NET 3.5 Equivalent (Deprecated) .NET 3.5 API を実装する .NET ランタイム。この機能は非推奨なので、使用しないでください。.NET 4 を使用してください。 
.NET 4.x Equivalent .NET 4 API を実装する .NET ランタイム。この API は .NET 3.5 よりも新しい API で、より多くの API へのアクセスを提供し、より多くの外部ライブラリと互換性があり、C# 6 をサポートします。これはデフォルトのスクリプティングランタイムです。
Scripting Backend スクリプティングバックエンドは、プロジェクトの C# コードを Unity がコンパイルし実行する方法を決定します。この設定は iOS では使用できません。
Mono インクリメンタルビルドを使用するには、Build Settings ダイアログから Build を選択してから Append オプションを選択します。 Replace オプションを使用すると、クリーンなビルドが実行されます。C# コードを .NET Common Intermediate Language (CIL) にコンパイルし、Common Language Runtime を使用してその CIL を実行します。
注意 Mono ビルドは Apple App Store では使用できなくなり、Mono は iOS 11 以降ではサポートされません。Mono は非推奨の .NET 3.5 ランタイムを使用する場合にのみ選択できます。
IL2CPP C# コードを CIL にコンパイルし、CIL を C++ に変換し、その C++ をネイティブのマシンコードにコンパイルします。これは、ランタイムに直接実行されます。詳細は IL2CPP を参照してください。
ヒント IL2CPP スクリプティングバックエンドによって生成された C++ コードはインクリメンタルに更新され、インクリメンタルな C++ ビルドシステムは、ソースファイルの変更のみをコンパイルします。これにより、イテレーション時間を大幅に短縮することができます。
API Compatibility Level Compatibility Level (互換性レベル) は、プロジェクトで使用できる .NET API を決定します。この設定はサードパーティ製のライブラリとの互換性に影響します。
ヒント サードパーティ製のアセンブリで問題が発生した場合は、API Compatibility Level セクションの提案を試みてください。
.Net 2.0 最大の .Net 互換性、最大ファイルサイズ。非推奨の .NET 3.5 ランタイムの一部。
.Net 2.0 Subset 完全な .Net 互換性のサブセット。ファイルサイズは小さくなります。非推奨の .NET 3.5 ランタイムの一部。
.Net Standard 2.0 .NET Standard 2.0 と互換性があります。ビルドは小さく、完全なクロスプラットフォームをサポートします。
.Net 4.x .NET Standard 2.0 に含まれていない API にアクセスするライブラリを使用する場合は、このオプションを選択します。.NET Framework 4 (.NET Standard 2.0 プロファイルのすべてと追加 API を含む) と互換性があります。
サイズが大きめのビルドを作成します。使用可能な追加の API がすべてのプラットフォームで必ずしもサポートされているわけではありません。詳細については、追加のクラスライブラリアセンブリの参照 を参照してください。
C++ Compiler Configuration IL2CPP 生成コードをコンパイルするときに使用する C++ コンパイラーの設定を選択します。この設定は iOS では使用できません。
Use incremental GC インクリメンタルなガベージコレクターを使用します。これは、ガベージコレクションをいくつかのフレームに広げ、フレーム継続時間中に GC に関連するスパイクを軽減します。

API Compatibility Level

すべてのターゲットに対する Mono の API 互換性レベル を選択できます。時にはサードパーティ製の .NET ライブラリが、.NET 互換性レベル外の機能を使用することがあります。そのような場合に何が起きているか理解し、最良の修正処理を行うためには、以下を試みると良いでしょう。

  1. Windows の場合は Reflector をインストールします。
  2. API 互換性レベルに問題が疑われる .NET アセンブリを Reflector にドラッグします。これらは Frameworks/Mono/lib/mono/YOURSUBSET/にあります。
  3. サードパーティ製のアセンブリをドラッグします。
  4. サードパーティ製のアセンブリを右クリックし、Analyze を選択します。
  5. 分析レポートの中で、Depends on セクションを調べます。サードパーティ製品依存でありながら、選択した .NET 互換性レベルで対応しないものはすべてここで赤字でハイライトされます。

Apple-specific information

iOS プラットフォームの Apple-specific の設定
iOS プラットフォームの Apple-specific の設定
設定 機能
Use on Demand Resource オンデマンドリソースを使用するには、このオプションを有効にします。
有効にすると、Variant map for app slicing セクションが表示されます。
Ackelerometer Frequency 加速度センサーのサンプリング頻度を設定します。Disabled を選択すると、サンプルは取得されません。そうでない場合は、15Hz30Hz60Hz100Hz から選択できます。
Camera Usage Description iOS デバイスでカメラにアクセスする理由を入力します。
Location Usage Description iOS デバイスの場所にアクセスする理由を入力します。
Microphone Usage Description iOS デバイスのマイクにアクセスする理由を入力します。
Mute Other Audio Sources これを有効にすると、Unity は、バックグラウンドで実行しているアプリケーションからのオーディオを止めます。これを無効にすると、バックグラウンドアプリケーションからのオーディオを Unity のアプリケーションと一緒に再生します。
Prepare iOS for Recording マイク録音 API を初期化するには、このオプションを有効にします。これにより、録音の遅延は少なくなります (iPhone ではオーディオ出力の再ルーティングはイヤホン経由でのみですが)。
Forcing iOS Speakers when recording これを有効にすると、ヘッドフォンが接続され、録音中であっても、内蔵スピーカを通して出力を送信します。
Requires Persistent WiFi これを有効にすると Wi-Fi 接続が必須になります。アプリケーションが実行されている間、iOS はアクティブな Wi-Fi 接続を維持します。
Allow downloads over HTTP (nonsecure) HTTP 経由でコンテンツをダウンロードできるようにするには、これを有効にします。デフォルトであり、推奨されるのは、HTTPS です。
Supported URL schemes supported URL schemes のリスト。
新しいスキームを追加するには、Size プロパティーの値を増やし、表示される新しい Element ボックスにロードするアセットへの参照を設定します。

デバイス情報

iOSプラットフォームのデバイス設定
iOSプラットフォームのデバイス設定
設定 機能
Disable HW Statistics これを有効にすると、アプリケーションがハードウェアに関する情報を Unity に送信しないように指示します。詳細は、Unity Hardware Statistics を参照してください。
Target Device ゲームがターゲットにするデバイスを選択します。選択肢は iPhone OnlyiPad OnlyiPhone + iPad です。
Target SDK ゲームがターゲットとする SDK を選択します。選択肢は Device SDKSimulator SDK です。
注意 正しい SDK を選択するよう注意してください。例えば、Device SDK を選択してから Xcode の Simulator をターゲットにすると、多くのエラーメッセージが表示されビルドに失敗します。
Target minimum iOS Version ゲームが動作する iOS の最低バージョンを定義します。
Enable ProMotion Support これを有効にすると ProMotion ディスプレイで高周波リフレッシュレート (120 Hz) が可能になります。この設定を有効にすると、バッテリーの寿命に影響する場合があります。
Requires ARKit support これを有効にすると、App Store に公開するときにアプリを iPhone 6s/iOS 11 以降のデバイスに制限します。
Defer system gestures on edges 以下のエッジのうち、システムのジェスチャを適用するために 2 回スワイプする必要があるものにチェックを入れます。Top EdgeLeft EdgeBottom EdgeRight Edge
Hide home button on iPhone X これを有効にすると、アプリケーションの実行中に iPhone X デバイスのホームボタンを非表示にします。
Render Extra Frame on Pause これを有効にすると、アプリケーションが一時停止しているときにフレームの後に追加のフレームを生成します。これにより、アプリケーションがバックグラウンドで実行されているときに、ポーズ状態を示すグラフィックスを表示します。
Behavior in Background ユーザーがホームボタンを押したときにアプリケーションが何をすべきかを選択します。
Custom バックグラウンド処理で独自の動作を実装できます。例は、 BackgroundFetch Bitbucket プロジェクトを参照してください。
Suspend アプリケーションを一時停止しますが、終了しません。これがデフォルトの動作です。
Exit 一時停止する代わりに、ユーザーがホームボタンを押したときにアプリケーションを終了させます。

Variant map for app slicing section

スクリプトで設定されたバリアント名のリストを表示するには、Variant map for app slicing セクションを開きます。バリアントの詳細については、App Slicing を参照してください。

iOS プラットフォームのバリアント設定
iOS プラットフォームのバリアント設定

注意 このセクションが表示されない場合は、Use on Demand Resource プロパティーが有効になっていることを確認してください。

新しいバリアントを、プラス (+) とマイナス ( - ) のアイコンで加えたり、削除したりすることができます。また、リストからバリアントを選択し、その設定を Variant settings で表示または変更することもできます。

設定 機能
Variant name 読み込み中のスクリプトからバリアントの名前を表示します。いずれの設定でも、Custom value を選択すると、下にプロパティーが表示され、独自の値を入力して使用することができます。
Device このバリアントが対象とするデバイスを選択します。オプションには Any (デフォルト)、iPhoneiPadiWatchCustom value が含まれます。
Memory このバリアントに必要な最小メモリを選択します。オプションには Any (デフォルト)、1GB2GB3GB4GBCustom value が含まれます。
Graphics 使用する Metal フレームワーク を選択します。選択肢には Any (デフォルト)、Metal1v2Metal2v2Metal2v3Metal3v1Metal3v2Metal4v1Custom value があります。
Display color space 使用する色域を選択します。選択肢には Any (デフォルト)、sRGBDisplayP3Custom value があります。

また、独自の設定を追加することもできます。 Add custom entry ボタンをクリックすると、新しい一組のテキストボックスが表示されます。<key> と表示されているボックスに設定名を入力し、<value> と表示されたボックスに使用したい値を入力します。

その他の設定

iOS プラットフォームのその他の設定
iOS プラットフォームのその他の設定
設定 機能
Architecture どのアーキテクチャーをターゲットにするか選択します。
Universal すべてのアーキテクチャをサポートします。これが推奨されるオプションです。
Armv7 以前の 32 ビット ARM アーキテクチャのみをサポートします。
Arm64 新しい 64 ビット ARM アーキテクチャのみをサポートします。アプリケーションがハイエンド端末のみをターゲットとしている場合は、このオプションを選択することをおすすめします。
x86_64 x86_64 Intel アーキテクチャをサポートします。これは、Simulator SDK で使用できる唯一のアーキテクチャです。
Scripting Define Symbols カスタムコンパイルフラグを設定します。詳細は、プラットフォーム依存コンパイル を参照してください。
Allow ‘unsafe’ Code Enable support for compiling ‘unsafe’ C# code in a pre-defined assembly (for example, Assembly-CSharp.dll).
For Assembly Definition Files (.asmdef), click on one of your .asmdef files and enable the option in the Inspector window that appears.
Active Input Handling ユーザーからの入力をどのように処理するかを選択します。
Input Manager 従来の Input 設定を使用します。
Input System (Preview) Use the Input system. The Input System is provided as a preview package for this release. To try a preview of the Input System, install the InputSystem package.
Both 両方のシステムを同時に使用できます。

Optimization

iOS プラットフォームの Optimization 設定
iOS プラットフォームの Optimization 設定
設定 機能
Prebake Collision Meshes ビルド時に衝突データをメッシュに加えるには、このオプションを有効にします。
Keep Loaded Shaders Alive シェーダーがアンロードされないようにするには、このオプションを有効にします。
Preloaded Assets 起動時にプレイヤーが読み込むためのアセットの配列を設定します。
新しいアセットを加えるには、Size プロパティーの値を増やし、表示される新しい Element ボックスに読み込むようにアセットへの参照を設定します。
AOT compilation options Ahead of Time (AOT) コンパイルの追加オプションです。これは ビルドした iOS プレイヤーのサイズ最適化 に役立ちます。
Strip Engine Code このツールを有効にすると、Unity Linker ツールはプロジェクトが使用しない Unity エンジン機能のコードを削除します。この設定は IL2CPP スクリプティングバックエンド でのみ可能です。
大抵のゲームは、必要なすべての DLL を使用するわけではありません。 Strip Engine Code を有効にすると、iOS デバイスでビルドされたプレイヤーのサイズを減らすために、未使用の部分を取り除くことができます。現在選択しているオプションによって、通常は削除されるクラスを使用している場合、ビルドを行うときにデバッグメッセージが表示されます。
Managed Stripping Level Unity が未使用のマネージ (C#) コードを削除する度合いを選択します。
Unity がゲームやアプリケーションをビルドするとき、Unity Linker プロセスはプロジェクトで使用する動的にリンクされたマネージライブラリから未使用のコードを削除します。コードを削除すると結果として得られる実行ファイルはかなり小さくなりますが、誤って実際に使用されているコードを削除することがあります。この設定では、Unity が未使用のコードをどれだけ積極的に削除するかを選択できます。
Normal ビルドサイズと .NET/IL2CPP のビルド時間を減らすために、アクセス不能なマネージコードを削除します。
Aggressive Normal オプションよりも積極的にコードを削除します。コードサイズはさらに削減されますが、この追加の削減は副作用を伴う可能性があります。例えば、いくつかのメソッドはデバッガーでは表示されなくなり、リフレクションによってアクセスされるコードは削除されます。特定のクラスとメソッドを保持するためにカスタムの link.xml ファイルを作成することができます。詳細は IL2CPP を使ったマネージバイトコードストリップ を参照してください。
Script Call Optimization ランタイムの速度を上げるために任意で例外処理を無効にする方法を設定します。詳しくは iOS 固有の最適化 を参照してください。
Slow and Safe 完全な例外処理を行います (Mono スクリプティングバックエンドを使用する場合は、デバイスのパフォーマンスに影響を与えることがあります)。
Fast but no Exceptions デバイスの例外に対してデータを提供しません (Mono スクリプティングバックエンドを使用すると、ゲームはより高速で実行されます)。
ノート この機能を IL2CPP スクリプティングバックエンド と一緒に使用してもパフォーマンスに影響を与えません。ただし、リリース用ビルドで未定義の動作を避けることができます。
Vertex Compression チャンネルごとに頂点圧縮を設定します。例えば、位置とライトマップ UV 以外のすべてに対して圧縮を有効にすることができます。インポートされた各オブジェクトに設定されたメッシュ全体の圧縮は、オブジェクトに設定された頂点圧縮を上書きします。
Optimize Mesh Data これを有効にすると、メッシュに適用されるマテリアルに必要のないすべてのデータはメッシュから削除されます。

Logging

特定のコンテキストで許可するログのタイプを選択します。

iOS プラットフォームのログ設定
iOS プラットフォームのログ設定

各ログタイプ (ErrorAssertWarningLogException) に対して、以下のオプションから 1 つ選択します。スクリプト実行中にログを行う (ScriptOnly)、常に行なう (Full)、決して行なわない (None)。

Legacy

Clamp BlendShapes (Deprecated) オプションを有効にすると、SkinnedMeshRenderers でブレンドシェイプのウェイトの範囲を固定できます。

iOS プラットフォームの古い設定
iOS プラットフォームの古い設定

XR Settings

スタンドアロンプレイヤーのXR設定
スタンドアロンプレイヤーのXR設定
設定 機能
Virtual Reality Supported VR アプリケーションの場合、これを有効にします。次に、必要な VR SDK をリストに加えます。
Virtual Reality SDKs リストに Virtual Reality SDK を加えたり、削除したりします。このリストは、Virtual Reality Supported が有効な場合にのみ利用可能です。
SDK をリストに加えるには、プラス (+) ボタンをクリックします。
SDK をリストから削除するには、選択してからマイナス (-) ボタンをクリックします。
一部の SDK は追加設定をここに表示します。詳細は XR SDK を参照してください。
Stereo Rendering Mode VR デバイスのレンダリング方法を選択します。
Multi Pass これが通常のレンダリングモードです。Unity はシーンを 2 度レンダリングします。最初に左眼画像をレンダリングしてから右眼画像をレンダリングします。
Single Pass 両方の眼の画像を同時にまとまった 1 つのレンダーテクスチャにレンダリングします。つまり、シーン全体が 1 回だけレンダリングされるため、CPU の処理時間が大幅に削減されます。
Vuforia Augmented Reality Supported これを有効にすると、Vuforia Virtual Reality SDK を使用するときに必要な Vuforia Augmented Reality SDK を使用できます。

XR Support Installers 

スタンドアロンプレイヤーの XR 設定
スタンドアロンプレイヤーの XR 設定

Vuforia Software Development Kit の使用を可能にするには Vuforia Augmented Reality のリンクをクリックします。 Vuforia Augmented Reality Supported プロパティーを使用可能にするには、Vuforia Software License を所有し、ライセンスの条項に同意する必要があります。



  • 2018–11–29 編集レビュー を行って修正されたページ

  • Mute Other Audio Sources は 5.5で追加

  • iOS Player Settings のドキュメントは Unity 2018.1 で追加

  • ‘unsafe’ コードのチェックボックスは Unity 2018.1 で追加

  • .NET 4.x ランタイムは 2018.1 で追加

  • .Net 3.5 スクリプティングランタイムは、[2018.3](../Manual/30_search.html?q = newin20183) では非推奨です。 NewIn20183

  • 最低の iOS バージョンは Unity [2018.3](../Manual/30_search.html?q = newin20183) で 9 に更新 NewIn20183

  • Input System preview added in Unity 2019.1 NewIn20191

  • Unity 2019.3 で GPU Skinning は Compute Skinning に名称変更NewIn20193

iOS ハードウェアガイド
iOS 2D テクスチャ オーバーライド