Version: Unity 6.0 (6000.0)
言語 : 日本語
iOS 環境設定
iOS 用の開発

iOS Player 設定

iOS プレイヤーの Player 設定では、iOS プラットフォームをターゲットにするときに、最終的なアプリケーションを Unity がどのようにビルドして表示するかをカスタマイズできます。アクセスするには、Edit > Project Settings > Player に移動し、iOS タブを選択します。一般的な Player 設定については、Player 設定 を参照してください。

iOS の Player 設定セクション。
iOS の Player 設定セクション。

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

Icon

iOS の Icon 設定。
iOS の Icon 設定。

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

iOS デバイスごとに、以下のタイプのカスタムアイコンをアップロードして割り当てることができます。

設定 説明
Application icons アプリケーションのメインのデバイスアイコン。
Spotlight icons Spotlight 検索結果に表示されるアイコン。
Settings icons デバイスのメインの設定ページに表示されるアイコン。
Notification icons アプリケーションから送信される通知に表示されるアイコン。
Marketing icons Apple App Store で使用されるアイコン。

アイコンのファイルは、Texture2D アセットの形式で、Unity がサポートする 任意の画像ファイルにすることができます。アイコンのテクスチャがない場合、Unity はアイコンのテクスチャを最も近いサイズに拡大縮小し、より大きなテクスチャを使用するようにします。

Resolution and Presentation

Resolution and Presentation の以下の設定を使用して、画面の表示をカスタマイズします。

Resolution

プロパティ 説明
Resolution Scaling Mode Resolution Scaling Mode 設定を使用して、 スケールをネイティブの画面解像度以下に設定します。
Disabled スケールは適用されず、アプリケーションはネイティブの画面解像度にレンダリングされます。
FixedDPI この値を選択すると、Target DPI プロパティが表示されます。

Target DPI プロパティを使用して、ゲーム画面のターゲット DPI を設定します。デバイスのネイティブの画面 DPI がこの値よりも高い場合、ゲーム画面はこの設定に合わせてダウンスケールされます。これは、パフォーマンスとバッテリー寿命の最適化に役立ちます。また、これを使用して特定の DPI 設定をターゲットにすることもできます。

Unity では、このスケールを min(Target DPI * Factor / Screen DPI, 1) で計算します。Factor には、Quality 設定で入力した Resolution Scaling Fixed DPI Factor の値が使用されます。
Reset resolution on window resize ウィンドウサイズが変更されたときに、画面解像度を新しいウィンドウサイズに設定します。Resolution Scaling ModeFixed DPI に設定すると、Fixed DPI プロパティに基づいて解像度が再計算されます。

Miscellaneous

プロパティ 説明
Show Loading Indicator ローディングインジケーターが表示されるかどうか、どのように表示されるかを指定します。
Don’t Show ローディングインジケーターは表示されません。
デフォルトのローディングインジケーターが表示されます。
Large 大きなローディングインジケーターが表示されます。

向き

プロパティ 説明
デフォルトの向き : デバイスの画面内でのアプリケーションウィンドウの向きを指定します。

ノート: この設定に設定した値は、Unity によって Android、iOS、UWP 間で共有されます。
Portrait : アプリケーションの下部が画面の下部と揃う縦向き。
Portrait Upside Down : アプリケーションの下部が画面の上部に揃う縦向き。
Landscape Right : アプリケーションの右側が画面の上部に揃う横向き。
Landscape Left : アプリケーションの左側が画面の上部に揃う横向き。
Auto Rotation : 画面は、Allowed Orientations for Auto Rotation セクションで指定した任意の向きに回転できます。
Use Animated Autorotation (非推奨) ユーザーがデバイスを回転させるときのアニメーション遷移を有効にします。そうでない場合は、画面の回転は即座に変化します。
ノート:
• このプロパティは、Default OrientationAuto Rotation に設定したときのみ表示されます。
• iOS 16 以降のバージョンでは、自動回転は常にアニメーション化されるため、このプロパティは効果がありません。
• このプロパティは非推奨になり、将来のリリースで削除される予定です。

Allowed Orientations for Auto Rotation

Allowed Orientations for Auto Rotation セクションを使用して、Default OrientationAuto Rotation に設定したときにアプリケーションがサポートする向きを指定します。これは、例えば、アプリケーションを横向きにロックしながら、ユーザーが横左向きと横右向きを切り替えられるようにする場合に便利です。

ノート: このセクションは、Orientation セクションで Default OrientationAuto Rotation に設定した場合のみ表示されます。

プロパティ 説明
Portrait アプリケーションの下部を画面の下部に合わせて縦向きにできます。
Portrait Upside Down : アプリケーションの下部を画面の上部に合わせて縦向きにできます。
Landscape Right アプリケーションの右側を画面の上部に揃えて横向きにできます。
Landscape Left : アプリケーションの左側を画面の上部に揃えて横向きにできます。

Multitasking Support

アプリケーションを全画面モードで実行する必要がある場合は、Requires Fullscreen オプションを有効にします。

Status Bar

Status Bar セクションを使用して、iOS ステータスバーに関連するパラメーターを指定します。

プロパティ 説明
Status Bar Hidden アプリケーション起動時にステータスバーを非表示にします。
Status Bar Style アプリケーション起動時のステータスバーのスタイルを定義します。

その他の解像度とプレゼンテーションの設定

プロパティ 説明
Disable Depth and Stencil 深度バッファとステンシルバッファを無効にします。
Render Over Native UI ネイティブ UI の上にアプリケーションを強制的に描画します。この設定を有効にするには、カメラの Clear Flags を Solid Color に設定し、アルファ値を 1 未満にします。

Splash Image

Virtual Reality Splash Image 設定を使用して、仮想現実 (VR) ディスプレイのカスタムスプラッシュ画像を選択します。一般的なスプラッシュスクリーン設定については、スプラッシュスクリーンを参照してください。

Launch Screen

iOS の Launch Screen 設定。
iOS の Launch Screen 設定。

Launch Screen は、iOS がデバイスでスプラッシュスクリーンを作成するストーリーボードファイルです。以下の制限があります。

  • iPad のデバイスの向きに基づいて異なるコンテンツをディスプレイすることはできません。
  • すべての iPhone は横向きの起動画面をサポートしますが、特定の iOS バージョンではバグのため、Landscape Right の起動画面ではなく Landscape Left の起動画面を表示します。
  • iOS 13 の前は、ストーリーボードのルートビューコントローラーをオーバーライドできませんでした。そのため、起動画面はすべての向きをサポートし、ステータスバーの動作など一部の UI 設定を無視します。iOS 13 以降は、起動画面は向きとステータスバーの外観に関するアプリケーションの設定に完全に準拠します。

これらの制限は、カスタムストーリーボードにも適用されます。

iPhone Launch ScreeniPad Launch Screen セクションで iPhone と iPad の Launch screen type を選択します。

プロパティ 説明
Default このオプションを選択すると、Unity は Unity のデフォルトのスプラッシュスクリーンの背景と同じ単色のブルーブラックの画像を追加します。この画像は、縦向きと横向きの両方に使用され、Aspect Fill モードを使用して表示されます。
なし Apple は Launch Images をサポートしなくなりました。このオプションは、後方互換性のために存在します。選択すると、プロジェクトで Unity のデフォルトのスプラッシュスクリーンが代わりに使用されます。
Image and background (relative size) 画面の中央に画像を表示し、残りの領域を単色で塗りつぶします。
Portrait Image 縦向きの画像を選択します。
Landscape Image 横向きの画像を選択します。
Background Color 画像がカバーしないスクリーンスペースを埋める、背景色を選択します。
Fill percentage 画像サイズを、画面サイズに対するパーセンテージで指定します。Unity は画面の長さと幅のいずれか小さい方に基づいて画像サイズを計算します (横向き表示では垂直、縦向き表示では水平)。
Image and background (constant size) 画面の中央に画像を表示し、領域を単色で塗りつぶします。Image and background (relative size) と同じオプションがありますが、画像サイズをパーセンテージではなくポイントで指定する点が異なります。

ヒント:ポイントとピクセルは同じではありません。ピクセル (px) は画像内の 1 つのドットです。ポイント (pt) は、1 インチの 1/72 を表す長さの単位です。ピクセルサイズは画面サイズと解像度に比例し、ポイントサイズは任意の画面のサイズです。詳細は、サイズの単位に関する W3C ガイダンス を参照してください。
Custom Storyboard このオプションを選択すると、Custom Storyboard ボタンが表示されます。
Custom Storyboard このボタンを選択すると、カスタムのストーリーボードファイルがロード画面として使用されます。

カスタムストーリーボード

iPhone または iPad の Launch screen type ドロップダウンで、Custom Storyboard オプションを選択すると、Custom Storyboard ボタンが表示されます。

Custom Storyboard ボタンをクリックして、デバイス上でゲームが起動するときに表示するストーリーボードを選択します。ストーリーボードをここに表示するには、最初に Xcode でストーリーボードを作成し、それをプロジェクトにコピーする必要があります。詳細は、About storyboards, scenes, and connections を参照してください。

カスタムストーリーボードを使用しない場合は、Unity のビルトイン起動スクリーンを使ってスプラッシュ画像を実装できます。

Debugging and crash reporting

Debugging and crash reporting の設定を使用して、アプリケーションのパフォーマンスに関するデータを収集し、クラッシュをトラブルシューティングします。

デバッグ

プロパティ 説明
Enable Internal Profiler (Deprecated) この機能は非推奨で、Unity の将来のバージョンで削除される予定です。代わりに Profiler ウィンドウ を使用してください。

プロファイラーはアプリケーションのパフォーマンスデータを収集し、レポートをコンソールに出力します。レポートには、各 Unity サブシステムが各フレームで実行に要したミリ秒数が 30 フレーム平均で表示されます。

クラッシュレポート

プロパティ 説明
On .Net UnhandledException .NET の未処理の例外が発生したときに Unity が実行するアクションを選択します。
Crash アプリケーションがクラッシュした場合にクラッシュ レポートを生成します。このレポートは、ユーザーが iTunes に送信でき、開発者はクラッシュのトラブルシューティングに使用できます。
Silent Exit アプリケーションはエラーなしで終了し、クラッシュレポートを生成しません
Log Obj-C Uncaught Exceptions Objective-C Uncaught Exception 情報をコンソールに出力します。
Enable Crash Report API カスタムクラッシュレポーターがクラッシュをキャプチャできるようにします。スクリプトを使用して CrashReport API 経由でクラッシュログにアクセスできます。

その他の設定

Other Settings セクションでさまざまな Player 設定を行うことができます。これらのオプションは、以下のグループに分類されています。

レンダリング

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

    
Property 説明
Color Space レンダリングに使用する色空間を選択します。詳細は、リニアレンダリング概要 を参照してください。
Gamma ガンマ色空間は通常、フレームバッファ形式がチャンネルあたり 8 ビットに制限された古いハードウェアのライティングの計算に使用されます。最近のモニターはデジタルですが、入力に依然としてガンマエンコードされた信号を使用している場合もあります。
Linear リニア色空間レンダリングでは、より正確な結果が得られます。リニア色空間の使用を選択すると、エディターはデフォルトで sRGB サンプリングを使用します。テクスチャ がリニア色空間の場合は、リニア色空間を使用し、各テクスチャの sRGB サンプリングを無効にする必要があります。
Color Gamut レンダリングに使用する 色域 を追加または削除できます。プラス (+) アイコンをクリックすると、使用可能な色域のリストが表示されます。色域は、特定のデバイス (モニタやスクリーンなど) で使用可能な色の範囲を定義します。sRGB 色域はデフォルトの (また必須の) 色域です。
Metal API Validation エディター内ツールを使用してシェーダーの問題をデバッグするには、このオプションを有効にします。ドローコールで、ツールはシェーダーの想定されるテクスチャとアタッチされたテクスチャに対するバッファをチェックし、その互換性を確認します。この結果はコンソールで確認できます。

Metal API Validation は Apple の Metal API Validation を有効にしませんが、macOSiOS の Build Settings ウィンドウで Run in Xcode asDebug に設定することで有効にできます。

ノート:この設定は、macOS でエディターを実行する場合にのみ表示されます。
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 これを有効にすると、グラフィックス API の呼び出しを Unity のメインスレッドから別のワーカースレッドに移動します。これにより、メインスレッドで CPU 使用率が高いアプリケーションのパフォーマンスを向上することが可能です。
Static Batching static batching を使用するには、これを有効にします。
Dynamic Batching 動的バッチ処理 をビルドに使用します (デフォルトで有効)。

ノート: 動的バッチ処理は、スクリプタブルレンダーパイプライン がアクティブな場合は効果がないため、Graphics 設定の Scriptable Render Pipeline Asset が無効の場合にのみ表示されます。
Sprite Batching Threshold バッチ処理時に使用される最大頂点しきい値を制御します。
GPU SKinning このオプションを有効にすると、Metal GPU コンピュートスキニングを使用して、CPU リソースを解放できます。
Graphics Jobs (Experimental) : このオプションを有効にすると、グラフィックスタスク (レンダリングのループ) を他の CPU コアで動作するワーカースレッドにオフロードするよう Unity に指示されます。この機能は、多くの場合にボトルネックとなるメインスレッドの Camera.Render の作業時間を削減することを目的としています。

注意: この機能は実験的なものであり、プロジェクトのパフォーマンスが向上しない場合があり、新たなクラッシュの原因となる可能性もあります。
テクスチャ圧縮形式 iOS のデフォルトのテクスチャ圧縮形式として、ASTC または PVRTC を選択します。詳細は、テクスチャ圧縮形式の概要 を参照してください。
Normal Map Encoding : XYZ または DXT5nm-style を選択して、法線マップのエンコードを設定します。この設定は、法線マップに使用されるエンコードスキームと圧縮形式に影響します。DXT5nm-style 法線マップは高品質ですが、シェーダーでのデコードにコストがかかります。
Lightmap Encoding ライトマップのエンコードスキームと圧縮形式を定義します。
Low QualityNormal QualityHigh Quality から選択できます。
Lightmap Streaming ライトマップに Mipmap Streaming を使用するには、このオプションを有効にします。Unity では、ライトマップの生成時に、この設定がすべてのライトマップに適用されます。
ノート: この設定を使用するには、Texture Mipmap Streaming Quality 設定を有効にする必要があります。
Streaming Priority ミニマップストリーミングシステム のすべてのライトマップの優先順位を設定します。Unity では、ライトマップの生成時に、この設定がすべてのライトマップに適用されます。
正の数は優先度を高くします。有効な値は -128 から 127 までです。
Frame Timing Stats これを有効にすると、CPU/GPUフレームタイミング統計を収集します。
Allow HDR Display Output アプリケーション実行時に HDR モード出力をアクティベートします。これは、この機能をサポートするディスプレイでのみ機能します。HDR モードをサポートしていないディスプレイでは、ゲームは標準モードで実行されます。
Use HDR Display Output メインディスプレイが HDR をサポートしているかを確認し、サポートしている場合は、アプリケーションの起動時に HDR 出力に切り替えます。

ノート このオプションは、Allow HDR Display Output が有効な場合にのみ使用できます。
Swap Chain Bit Depth スワップチェーンバッファの各カラーチャンネルのビット数を選択します。Bit Depth 10 または Bit Depth 16 を選択できます。ビット深度の詳細は、D3DHDRDisplayBitDepth のスクリプティング API ページを参照してください。

ノート このオプションは、Use HDR Display Output が有効な場合にのみ使用できます。
Bit Depth 10 Unity は、R10G10B10A2 バッファ形式と ST2084 PQ エンコードの Rec2020 プライマリを使用します。
Bit Depth 16 Unity は R16G16B16A16 バッファ形式とリニア色の Rec709 プライマリ (エンコード無し) を使用します。
Virtual Texturing このオプションを有効にすると、シーンに高解像度テクスチャが多数ある場合に、GPU メモリの使用量を減らし、テクスチャのロード時間を短縮できます。詳細は、仮想テクスチャリング を参照してください。

ノート:この設定を有効にするには、Unity エディターを再起動する必要があります。
360 Stereo Capture Unity がステレオスコピック 360 の画像とビデオをキャプチャできるかどうかを示します。有効にすると、Unity は 360 キャプチャをサポートするために追加のシェーダーバリアントをコンパイルします (現在、Windows/OSX のみ)。enable_360_capture キーワードは RenderToCubemap の呼び出し中に追加されますが、この関数の外部ではトリガーされません。
Load/Store Action Debug Mode: モバイルプラットフォームでのレンダリングに関する問題の原因となる可能性がある未定義のピクセルを強調表示します。これは Unity エディターのゲームビューと、Build Settings で Development Build を選択した場合のビルドされたアプリケーションに影響します。詳細については、LoadStoreActionDebugModeSettings を参照してください。

Identification

アプリケーションの識別情報を入力します。

プロパティ 説明
Override Default Bundle Identifier バンドルの識別子を手動で設定できるかどうかを示します。
注意この設定は、macOS、iOS、tvOS、Android に影響します。
Bundle Identifier ビルドするアプリケーションのバンドル ID を入力します。ID の基本構造体は com.CompanyName.ProductName です。この構造体は居住国によって異なる可能性があるため、常に Apple が開発者アカウントに提供する文字列をデフォルトにします。ProductName はプロビジョニング証明書から入手できます。

Bundle Identifier は、規則 com.YourCompanyName.YourProductName に準拠し、英数字とハイフン文字のみで構成される必要があります。詳細は、CFBundleIdentifier を参照してください。
重要: 無効な文字が入力されると、ハイフンに自動で置き換えられます。

このプロパティを設定するには、Override Default Bundle Identifier を有効にします。
バージョン バンドルのリリースバージョン番号の文字列 (例えば、4.3.6) を入力します。

この値は、関連する info.plist ファイルに CFBundleShortVersionString として表示されます。詳細は、CFBundleShortVersionString を参照してください。
Build アプリケーションのこのバージョンのビルド番号を入力します。

この値は、関連する info.plist ファイルに CFBundleVersion として表示されます。詳細は、CFBundleVersion を参照してください。
Signing Team ID Apple Developer Team ID を入力します。これについては、Apple 開発者 ウェブサイトの Xcode ヘルプ で確認できます。これにより、作成された Xcode プロジェクトの Team ID を設定し、開発者が Build and Run 機能を使用できるようにします。自分のアプリケーションに自動的に署名するためには、Apple Developer Team ID を入力する必要があります。

詳細は、チームのプロビジョニングプロファイルの作成 を参照してください。
Automatically Sign これを有効にすると、Xcode によってビルドに自動的に署名されます。

設定方法

Property 説明
Scripting Backend : 使用するスクリプティングバックエンドを選択します。スクリプティングバックエンドは、プロジェクトの C# コードを Unity がコンパイルし実行する方法を決定します。
Mono :C# コードを .NET Common Intermediate Language (CIL) にコンパイルし、その CIL を Common Language Runtime を使用して実行します。詳細については、Mono を参照してください。
IL2CPP : C# コードを CIL にコンパイルし、CIL を C++ に変換して、次に、その C++ をネイティブのマシンコードにコンパイルします。これは、ランタイムに直接実行されます。詳細については、IL2CPP を参照してください。
API Compatibility Level プロジェクトに使用する .NET API を選択します。この設定はサードパーティ製のライブラリとの互換性に影響します。ただし、エディター固有のコード (エディターディレクトリまたはエディター固有の Assembly Definition 内のコード) には影響しません。

ヒント: サードパーティ製のアセンブリで問題が発生した場合は、下の API Compatibility Level セクションを参照してください。
.Net Framework .NET Framework 4 (.NET Standard 2.0 プロファイルのすべてと追加 API を含む) と互換性があります。.NET Standard 2.0 に含まれていない API にアクセスするライブラリを使用する場合は、このオプションを選択します。より大きいビルドを作成し、使用可能な追加の API を作成することがすべてのプラットフォームで必ずしもサポートされるわけではありません。詳細については、追加のクラスライブラリアセンブリの参照 を参照してください。
.Net Standard 2.1 ビルドのサイズが小さくなり、完全なクロスプラットフォームをサポートします。
エディターアセンブリ互換性レベル エディターアセンブリで使用する .NET API を選択します。
.NET Framework .NET Framework 4 (.NET Standard 2.1 プロファイルのすべてと追加 API を含む) と互換性があります。.NET Standard 2.1 に含まれていない API にアクセスするライブラリを使用する場合は、このオプションを選択します。より大きいビルドを作成し、使用可能な追加の API を作成することがすべてのプラットフォームで必ずしもサポートされるわけではありません。詳細については、追加のクラスライブラリアセンブリの参照 を参照してください。
.NET Standard .NET Standard 2.1 と互換性があります。ビルドのサイズが小さくなり、完全なクロスプラットフォームをサポートします。
IL2CPP Code Generation Unity での IL2CPP コード生成の管理方法を定義します。

ノート: これを使用するには、Scripting BackendIL2CPP に設定します。
C++ Compiler Configuration IL2CPP 生成コードをコンパイルするときに使用する C++ コンパイラーの設定を選択します。
Debug デバッグ設定はすべての最適化をオフにするため、コードのビルドは速くなりますが、実行は遅くなります。
Release リリース設定によって最適化が有効になるため、コンパイルされたコードの実行が速くなり、バイナリサイズは小さくなりますが、コンパイルに時間がかかります。
Master マスター設定により、用意されているすべての最適化が可能になり、対象となるすべてのビットのパフォーマンスが制限されます。例えば、MSVC++ コンパイラーを使用するプラットフォームでは、このオプションを使用すると、リンク時のコードの生成が可能になります。この設定を使用したコードのコンパイルには、リリース設定を使用した場合よりも、大幅に時間がかかる場合があります。Unity では、ビルド時間の増加が許容できる場合は、ゲームの出荷バージョンをマスター設定を使用してビルドすることをお勧めしています。
IL2CPP Stacktrace Information スタックトレースに加える情報を選択します。情報タイプの詳細は、IL2CPP によるマネージスタックトレース を参照してください。
Method Name スタックトレースに各マネージメソッドを加えます。
Method Name, File Name, and Line Number スタックトレースにファイルと行番号の情報を持つ各マネージメソッドを加えます。

ノート:このオプションを使用すると、ビルド時間とビルドされたプログラムの最終的なサイズの両方が増加する可能性があります。
Use incremental GC インクリメンタルガベージコレクターを使用します。これにより、ガベージコレクションをいくつかのフレームに広げ、フレーム継続時間中にガベージコレクションに関連するスパイクを軽減します。詳しくは、自動メモリ管理 を参照してください。
Allow downloads over HTTP HTTP 経由でのコンテンツのダウンロード許可を設定します。より安全な HTTPS プロトコルが推奨されているため、デフォルトではこのオプションは Not allowed になっています。
Not Allowed HTTP 経由でのコンテンツのダウンロードを許可しません。
Allowed in Development Builds 開発ビルドでのみ HTTP 経由のダウンロードを許可します。
Always Allowed 開発ビルドとリリースビルドで HTTP 経由のダウンロードを許可します。
Camera Usage Description: デバイスでカメラにアクセスする理由を入力します。
Microphone Usage Description デバイスのマイクにアクセスする理由を入力します。
Location Usage Description デバイスの場所にアクセスする理由を入力します。
Use On-Demand Resources オンデマンドリソースを使用し、Variant map for app slicing を有効にします。
Accelerometer Frequency 加速度センサーをサンプリングする頻度を選択します。パフォーマンスを向上させるには、頻度を減らします。アプリケーションで加速度センサーを使用しない場合は、Disabled を選択します。
Mute Other Audio Sources : Unity のアプリケーションが、バックグラウンドで実行されているアプリケーションのオーディオを停止するかどうかを指定します。これを無効にすると、バックグラウンドアプリケーションのオーディオが Unity のアプリケーションとともに再生されます。
Prepare iOS for Recording マイクレコーディング API を初期化します。これにより、レコーディングの待ち時間は少なくなりますが、iPhone のオーディオ出力はイヤホン経由で再ルーティングされます。
Force iOS Speakers when Recording ヘッドフォンが接続され録音中であっても、内蔵スピーカーを通して電話のオーディオを出力します。
Requires Persistent WiFi このオプションを有効にすると Wi-Fi 接続が必須になります。アプリケーションが実行されている間、アクティブな Wi-Fi 接続を維持します。
Supported URL schemes サポートされている URL スキーム のリスト。

新しいスキームを加えるには、Size プロパティの値を引き上げて、表示される新しい Element ボックスに、開く URL への参照を設定します。
Target Device アプリケーションがターゲットにするデバイスを選択します。
ターゲットSDK アプリケーションがターゲットとする SDK を選択します。

ノート: 正しい SDK を選択するよう注意してください。例えば、Unity で Device SDK を選択してから Xcode の Simulator をターゲットにすると、ビルドに失敗します。
Target minimum iOS Version アプリケーションが動作する iOS の最低バージョンを定義します。
Enable ProMotion Support ProMotion ディスプレイで高周波リフレッシュレート (120 Hz) を使用します。これは、アプリケーションのバッテリーをより消耗させる場合があります。
Requires ARKit support アプリストアに公開するときにアプリを iPhone 6s/iOS 11 以降のデバイスに制限します。
Automatically add capabilities entitlements.plist ファイルを生成し、プロジェクトで検出された場合は Game Center の機能を追加します。エンタープライズ証明書でアプリケーションに署名するか、ワイルドカードバンドル識別子を使用する場合は、この設定を無効にします。
Defer system gestures on edges システムのジェスチャを適用するために 2 回スワイプする必要があるエッジを選択します。
Hide home button on iPhone X アプリケーションの実行中に iPhone X デバイスのホームボタンを非表示にします。
Render Extra Frame on Pause アプリケーションが一時停止しているときにフレームの後に追加のフレームを生成します。これにより、アプリケーションがバックグラウンドで実行されるときに、一時停止状態を示すグラフィックスをアプリケーションが表示できるようになります。
Enable Custom Background Behaviors ユーザーがアプリケーションをバックグラウンドに送信するときにアプリケーションができることを選択します。例として、BackgroundFetch GitHub プロジェクトを参照してください。
Variant map for app slicing スクリプトで設定されたバリアント名のリストを表示するには、Variant map for app slicing セクションを開きます。バリアントの詳細は、アプリケーションのスライシング を参照してください。

ノート:このプロパティを表示するには、Use on-demand resources を有効にします。
アーキテクチャ どのアーキテクチャーをターゲットにするか選択します。iOS では ARM64 のみが使用可能です。
Simulator Architecture シミュレーター用にビルドするアーキテクチャを選択します。このプロパティは、Target SDKSimulator SDK に設定したときにのみ表示されます。
ARM64 64 ビット ARM アーキテクチャをサポートします。
X86_64 64 ビット Intel/AMD アーキテクチャをサポートします。
Universal 64 ビット ARM および Intel/AMD を含むすべてのアーキテクチャをサポートします。
Active Input Handling ユーザーの入力をどのように処理するかを選択します。
Input Manager (Old) 従来の Input 設定を使用します。
Input System Package (New) Input システムを使用します。このオプションを使用するには、InputSystem パッケージ をインストールする必要があります。
Both 両方のシステムを使用します。

API Compatibility Level

すべてのターゲットに対する Mono の API 互換性レベルを選択できます。時にはサードパーティ製の .NET ライブラリが、.NET 互換性レベル外の機能を使用することがあります。Windows を使用している場合は、サードパーティ製のソフトウェア ILSpy を使用して、発生している状況と修正方法を理解できます。以下の手順に従ってください。

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

Shader Settings

プロパティ 説明
Shader Precision Model シェーダーが使用するデフォルトの精度を選択します。詳細については、シェーダーでの 16 ビット精度の使用を参照してください。
Platform default モバイルプラットフォームでは精度を低くし、他のプラットフォームでは最高精度にします。
Unified プラットフォームでサポートされている場合は、低い精度を使用します。
Strict shader variant matching シェーダーバリアントが見つからない場合は、エラーシェーダーを使用し、コンソールにエラーを表示します。
Keep Loaded Shaders Alive ロードされたすべてのシェーダーを存続させ、アンロードされないようにします。

Shader Variant Loading

これらの設定を使用して、ランタイムにシェーダーが使用するメモリ量を制御します。

プロパティ 説明
Default chunk size (MB) すべてのプラットフォームのビルドされたアプリケーション内に Unity が保存する、圧縮されたシェーダーバリアントのデータチャンクの最大サイズを設定します。デフォルト値は 16 です。詳細は、シェーダーのロード を参照してください。
Default chunk count Unity がすべてのプラットフォームのメモリに保持する解凍チャンク数のデフォルト制限を設定します。デフォルトは 0、つまり制限はありません。
Override このビルドターゲットの Default chunk sizeDefault chunk count のオーバーライドを有効にします。
Chunk size (MB) このビルドターゲットの Default chunk size (MB) の値をオーバーライドします。
Chunk count このビルドターゲットの Default chunk count の値をオーバーライドします。

スクリプトのコンパイル

iOS のスクリプトコンパイル設定
iOS のスクリプトコンパイル設定
プロパティ 説明
Scripting Define Symbols カスタムコンパイルフラグを設定します。

詳細については、プラットフォーム依存のコンパイルを参照してください。
Additional Compiler Arguments このリストにエントリーを追加し、Roslyn コンパイラーに追加の引数を渡します。引数を追加するごとに 1 つの新しいエントリーを使用します。
新しいエントリーを作成するには、Add (+) をクリックします。エントリーを削除するには、Remove (-) をクリックします。

必要な引数をすべて追加して、Apply をクリックすると、その後のコンパイルに追加の引数が含まれるようになります。Revert をクリックすると、このリストが最近適用された状態にリセットされます。
Suppress Common Warnings C# の警告 CS0169CS0649 を表示するかどうかを指定します。
Allow ‘unsafe’ Code 事前定義されたアセンブリ (例えば Assembly-CSharp.dll など) での ‘unsafe’ C# コード のコンパイルのサポートを有効にします。
アセンブリ定義ファイル (.asmdef) の場合は、.asmdef ファイルの 1 つをクリックして、表示される Inspector ウィンドウでオプションを有効にします。
Use Deterministic Compilation deterministic C# フラグを使用して、コンパイルを阻止するかどうかを指定します。この設定を有効にすると、コンパイルされるアセンブリは、コンパイルされるたびにバイト単位で同じになります。

詳細については、コード生成を制御する C# コンパイラーオプションを参照してください。

Optimization

Property 説明
Prebake Collision Meshes ビルド時に メッシュ に衝突データを追加します。
Preloaded Assets 起動時にプレイヤーが読み込むためのアセットの配列を設定します。
新しいアセットを追加するには、Size プロパティの値を引き上げ、表示される新しい Element ボックスに読み込むようにアセットへの参照を設定します。
AOT Compilation Options Ahead-of-Time (AOT) コンパイルの追加オプションです。これは ビルドした iOS プレイヤーのサイズ最適化 に役立ちます。
Strip Engine Code : プロジェクトが使用しない Unity エンジン機能のコードを Unity Linker ツールが削除するように設定する必要がある場合に、このオプションを有効にします。この設定は、IL2CPP スクリプティングバックエンド でのみ利用可能です。ほとんどのアプリケーションは、利用可能なすべての DLL を使用するわけではありません。このオプションは、アプリケーションが使用しない DLL を削除し、ビルドされたプレイヤーのサイズを縮小します。現在の設定で通常は削除される 1 つ以上のクラスをアプリケーションが使用している場合に、アプリケーションをビルドしようとすると、Unity はデバッグメッセージを表示します。
Managed Stripping Level 使用していないマネージ (C#) コードを Unity がどれだけ積極的に削除するかを選択します。Unity がアプリケーションをビルドするとき、Unity リンカーの処理により、プロジェクトが使用するマネージ DLL から未使用のコードを取り除くことができます。コードストリッピングは、結果の実行ファイルを小さくできますが、使用中のコードを削除する場合があります。

これらのオプションと IL2CPP によるバイトコードストリッピングの詳細については、ManagedStrippingLevel を参照してください。
最低限 これを使用して、クラスライブラリ、UnityEngine、Windows ランタイムアセンブリを削除し、他のすべてのアセンブリをコピーします。
ビルドサイズと Mono/IL2CPP のビルド時間を減らすために、アクセス不能なマネージコードを削除します。
UnityLinker を実行して、Low で達成できる範囲を超えるコードサイズを削減します。カスタム link.xml ファイルのサポートが必要な場合があります。また、リフレクションコードパスの中には、同じ動作をしないものがあります。
UnityLinker は可能な限り多くのコードを削除します。これにより、Medium で達成できる範囲を超えてコードサイズがさらに削減されますが、一部のメソッドのマネージコードが機能しなくなる場合があります。カスタム link.xml ファイルのサポートが必要な場合があります。また、リフレクションコードパスの中には、同じ動作をしないものがあります。
Script Call Optimization ランタイムのスピードを上げるために例外処理を無効にする方法を選択します。詳細は iOS 固有の最適化 を参照してください。
Vertex Compression チャンネルごとに頂点圧縮を設定します。これはプロジェクト内のすべてのメッシュに影響します。
通常、頂点圧縮は、メモリ内のメッシュデータのサイズを縮小し、ファイルサイズを削減し、GPU パフォーマンスを向上するために使用します。

頂点圧縮の設定方法とこの設定の制限については、メッシュデータの圧縮 を参照してください。
Optimize Mesh Data このオプションを有効にすると、ビルドで使用されるメッシュから未使用の頂点属性が削除されます。このオプションは、メッシュ内のデータ量を削減し、ビルドサイズ、ロード時間、ランタイムのメモリ使用量の削減を支援します。

注意: この設定を有効にしている場合は、ランタイムにマテリアルやシェーダーの設定を変更しないようにしてください。

詳細については PlayerSettings.stripUnusedMeshComponents を参照してください。
テクスチャミップマップのストリッピング すべてのプラットフォームでミップマップのストリッピングを有効にします。これにより、ビルド時にテクスチャから未使用のミップマップレベルが削除されます。
Unity は、ミップマップのレベルを現在のプラットフォームの品質設定と比較して、未使用のミップマップレベルを判別します。ミップマップレベルが現在のプラットフォームのすべての品質設定の範囲外にある場合は、ビルド時にそれらのミップマップレベルをビルドから削除します。QualitySettings.globalTextureMipmapLimit が削除されたミップマップレベルに設定されている場合、Unity は削除されていない最も近いミップマップレベルに値を設定します。

Stack Trace

各ログタイプに対応するオプションを有効にして、目的のログタイプを選択します。

プロパティ 説明
なし ログは記録されません。
ScriptOnly スクリプトの実行時にのみログを記録します。
full 常にログを記録します。

詳細は、スタックトレースのログを参照してください。

Legacy

プロパティ 説明
Clamp BlendShapes (Deprecated) これをアクティベートすると、SkinnedMeshRenderers でブレンドシェイプのウェイトの範囲を固定できます。

PlayerSettingsiOS

iOS 環境設定
iOS 用の開発