Version: 2021.1
言語: 日本語
iOS ビルド設定
Unity Remote

iOS Player 設定

このページでは、iOS 特有の Player 設定について説明します。すべてのプラットフォームに適用される一般的な Player 設定については、Player - General settings を参照してください。

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

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

Icon

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

iOS Player 設定の Icon 設定
iOS Player 設定の Icon 設定

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

アイコンタイプ 表示場所
Application icons アプリケーションの主要アイコン
Spotlight icons アプリケーションの Spotlight 検索結果
Settings icons デバイスの主要設定ページ
Notification icons アプリケーションから送信される通知
Marketing icons App Store

アップロードするすべてのアイコンは Texture 2D タイプのアセットです。アイコンのテクスチャがない場合、Unity はアイコンのテクスチャを最も近いサイズで拡大し、より大きなテクスチャを使用するようにします。

Resolution and Presentation

Resolution and Presentation (解像度と表示) セクションを使用して、画面の表示をカスタム化します。

これらの設定は、以下のカテゴリに分類されます。

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

Resolution Scaling

Resolution Scaling Mode 設定を使用して、 スケールをネイティブの画面解像度以下に設定します。

Value 機能
Disabled スケールは適用されず、アプリケーションはネイティブの画面解像度にレンダリングされます。
FixedDPI これを選択すると、Target DPI プロパティが表示されます。

Target DPI プロパティを使用して、ゲーム画面のターゲット DPI を設定します。デバイスのネイティブ画面の DPI がこの値よりも高い場合、ゲーム画面はこの設定に一致するように縮小されます。これは、パフォーマンスとバッテリー寿命の最適化を助けます。また、これを使用して、特定の DPI 設定をターゲットにすることもできます。

Unity はスケールを min(Target DPI * Factor / Screen DPI, 1) で計算します。Factor には、Quality 設定の Resolution Scaling Fixed DPI Factor 値が使用されます。

Orientation

Default Orientation ドロップダウンからゲームの画面の向きを選択します。デフォルト設定は Auto Rotation です。選択すると、デバイスの向きに合わせて画面が回転します。

他の設定を選択すると、画面上のホームボタンの固定位置を決定します。

設定 ホームボタンの位置
Portrait
Portrait Upside Down
Landscape Left
Landscape Right
Auto Rotation 画面の向きはデバイスの向きに応じて変化します。これがデフォルトです。

ノート: Default Orientation 設定は iOS と Android デバイスの両方に適用されます。

Default Orientation として Auto Rotation を選択すると、以下の設定が表示されます。

設定 機能
Use Animated Autorotation これを有効にすると、ユーザーがデバイスを回転させるときに、画面の回転にアニメーションによる遷移が使用されます。そうでない場合は、画面の回転は即座に変化します。
Allowed Orientations for Auto Rotation Auto Rotation は画面の向きをデバイスに合わせて変更します。許可する画面の向きを制限したい場合 (例えば、 デバイスを横向きにロックしたいなど) は、許可したい向きのチェックボックスをオンにします。

Multitasking Support

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

Status Bar

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

設定 機能
Status Bar Hidden これを有効にすると、アプリケーションが起動したときにステータスバーを非表示にします。
Status Bar Style アプリケーション起動時のステータスバーのスタイルを指定します。オプションには DefaultLight があります。
Disable Depth and Stencil これを有効にすると、深度バッファとステンシルバッファが無効になります。この設定は Android と iOS 両方に適応されます。
Render Over Native UI これを有効にすると、アプリケーションがネイティブの iOS または AndroidUI の上にレンダリングされます。この設定は Android と iOS 両方に適応されます。
Show Loading Indicator ローディングインジケーターの表示方法を選択します。オプションは LargeInversed LargeSmallInversed Small です。

Splash Image

Splash Image

Splash Image セクションを使用して、iOS がサポートするさまざまなデバイス用にアプリケーションのスプラッシュ画像をカスタマイズします。

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

共通の Splash Screen 設定 の上にある Virtual Reality Splash Image 設定では、VR ディスプレイのカスタムのスプラッシュ画像を選択できます。 

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

ストーリーボードを iOS の起動画面として使用
ストーリーボードを iOS の起動画面として使用

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

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

Use Storyboard for Launch Screen チェックボックスを無効にする場合は、以下のいずれかの方法でスプラッシュ画像を実装できます。

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

Launch Screens

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 (起動画面のタイプ) を選択します。

ノート: Apple は Launch Images をサポートしなくなりました。Unity は、2019.4 以降のバージョンで、Launch Images に関連するすべての設定を削除しました。

Value 機能
Default When you select this option, Unity adds a solid blue-black image that’s the same color as the background for Unity’s default splash screen. The image is used for both portrait and landscape orientations, and displays using aspect-fill mode.
None Apple no longer supports Launch Images. This option exists for backwards compatibility reasons. If you select it, your project will use Unity’s default splash screen instead.
Image and background (relative size) Displays an image in the center of the screen and fills the remaining area with a solid color.
Portrait Image Select an image for portrait orientation.
Landscape Image Select an image for landscape orientation.
Background Color Select a background color to fill any screen space that the image doesn’t cover.
Fill percentage Specify image size as a percentage of the screen size. Unity calculates image size based on the length or width of the screen, whichever one is smaller (vertical for landscape displays, horizontal for portrait ones).
Image and background (constant size) Displays an image in the center of the screen and fills the area with a solid color. This has the same options as Image and background (relative size), except that you specify image size in points rather than as a percentage.

Tip: Points and pixels are not the same. A pixel (px) is a single dot in your image. A point (pt) is a unit of length that measures 1/72th of an inch. Pixel sizes are relative to the screen size and resolution, while point sizes are the size on any screen. For more information, see W3C guidance on size units.
Custom XIB When you select this option, the Custom XIB button appears. Click the button to select a custom XIB file to use as a loading screen.
Custom Storyboard When you select this option, the Custom Storyboard button appears. Click the button to select a custom Storyboard file to use as a loading screen.

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

Debugging and crash reporting

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

iOS プラットフォームのデバッグとクラッシュレポート
iOS プラットフォームのデバッグとクラッシュレポート
設定 機能
Enable Internal Profiler (Deprecated) この機能は非推奨で、Unity の将来のバージョンで廃止される予定です。代わりに Profiler ウィンドウ を使用してください (Window> Analytics> Profiler)。

プロファイラーはアプリケーションのパフォーマンスデータを収集し、レポートをコンソールに出力します。レポートには、各 Unity サブシステムが各フレームで実行に要したミリ秒数が 30 フレーム平均で表示されます。
On .Net UnhandledException .NET の未処理の例外が発生したときに実行するアクションを選択します。オプションは Crash (アプリケーションがクラッシュしてクラッシュレポートを生成します - ユーザーはそれを iTunes に送信してクラッシュのトラブルシューティングに使用できます) と Silent Exit (アプリケーションはエラーなしで終了し、クラッシュレポートを生成しません) があります。
Log Obj-C Uncaught Exceptions このアクションを有効にすると、Unity は Objective-C Uncaught Exception 情報をコンソールに出力します。
Enable Crash Report API カスタムクラッシュレポーターがクラッシュをキャプチャできるようにします。スクリプトを使用して CrashReport API経由でクラッシュログにアクセスできます。

Other settings

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

Rendering

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

iOS プラットフォームの Rendering Player 設定
iOS プラットフォームの Rendering Player 設定
設定 機能
Color Space レンダリングに Gamma (ガンマ) と Linear (リニア) どちらの色空間を使用するかを選択します。
2 つの色空間の違いの説明は リニアレンダリングの概要 を参照してください。
Auto Graphics API このオプションを無効にすると、グラフィックス API を手動で設定することができます。このオプションはデフォルトで有効で、Metal を含みます。
Color Gamut レンダリングに使用する iOS プラットフォーム用の 色域 を追加または削除することができます。プラス (+) アイコンをクリックすると、使用可能な色域のリストが表示されます。色域は、特定のデバイス (モニターや画面) で使用可能な色の範囲を定義します。sRGB 色域はデフォルトの (そして必須の) 色域です。

広色域ディスプレイを備えた最近の iOS デバイスをターゲットにする場合は、DisplayP3 を使用してフルディスプレイ機能を利用します。古いデバイスのフォールバックとしては Metal Editor Support を使用してください。
Metal Editor Support これを有効にすると、Metal API を Unity エディターで使用し、Metal API をターゲットとしたより速い シェーダー のイテレーションを自在に行えます。

ノート: このオプションをオンまたはオフに変更する場合は、エディターを再起動する必要があります。
Metal API Validation シェーダーの問題をデバッグする必要がある場合は、このオプションを有効にします。このオプションは、Metal Editor Support チェックボックスが選択されている場合にのみ表示されます。

注意: 検証は 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 マルチスレッドレンダリングを使用するには、このオプションを有効にします 。
Static Batching 静的バッチ処理を使用するには、このオプションを有効にします。詳細は、ドローコールバッチング を参照してください。
Dynamic Batching 動的バッチ処理を使用するには、このオプションを有効にします (デフォルトでは有効)。詳細は、ドローコールバッチング を参照してください。

ノート: 動的バッチ処理は、スクリプタブルレンダーパイプライン がアクティブな場合は効果がないため、Graphics 設定の Scriptable Render Pipeline Asset が無効の場合にのみ表示されます。
Compute Skinning これを有効にすると、Metal GPU コンピュートスキニングを使用します。Metal GPU コンピュートスキニングは CPU リソースを解放します。GPU コンピュートスキニングの詳細は、Wikipedia のスケルタルアニメーションに関するページ を参照してください。
Graphics Jobs (Experimental) これを有効にすると、Unity がグラフィックスタスク (レンダリングのループ) を他の CPU コア上で動作するワーカースレッドにオフロードします。これは、しばしばボトルネックとなるメインスレッドの Camera.Render に要する時間を短縮します。

ノート: この機能は実験的です。プロジェクトのパフォーマンスが向上しない場合があり、不安定にする可能性があります。

現在、Unity は、Vulkan を使用している時のみグラフィックスジョブをサポートします。そのため、この設定は、OpenGL ES を使用しているときには効力がありません。
Normal Map Encoding XYZ または DXT5nm-style を選択して、法線マップのエンコードを設定します。DXT5nm-style 法線マップは高品質ですが、シェーダーでのデコードにコストがかかります。
Lightmap Encoding ライトマップのエンコードを設定するには、Low QualityNormal QualityHigh Quality のいずれかを選択します。この設定は、ライトマップのエンコードスキームと圧縮形式に影響します。
Lightmap Streaming Enabled これを有効にすると、現在のゲームカメラをレンダリングするために、必要に応じてライトマップのミップマップのみを読み込みます。この値は、生成されるライトマップテクスチャに適用されます。

ノート: この設定を使用するには、Texture Streaming Quality 設定を有効にする必要があります。
Streaming Priority このオプションは、ライトマップストリーミングが有効な場合にのみ表示されます。ライトマップミップマップストリーミングの優先順位を設定し、リソースの競合を解決します。これらの値を設定すると、Unity はそれらをライトマップテクスチャに適用します。

正の数値が優先されます。有効な値の範囲は –128 から 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 開発者用ドキュメントの CFBundleShortVersionString を参照してください。
Build アプリケーションのこのバージョンのビルド番号を入力します。関連する info.plist ファイルに CFBundleVersion として表示されます。詳しくは、Apple 開発者用のドキュメントで CFBundleVersion を参照してください。 
Signing Team ID Apple Developer Team ID を入力します。詳しくは、Apple 開発者用ウェブサイトの Xcode ヘルプ を参照してください。これにより、生成された Xcode プロジェクトの Team ID が設定され、開発者は Build and Run 機能を使用できるようになります。アプリケーションの自動署名のためには Apple Developer Team ID をここに入力する必要があります。

詳細は、Creating Your Team Provisioning Profile を参照してください。
Automatically Sign これを有効にすると、Xcode によってビルドに自動的に署名されます。

Configuration

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

API設定

設定 機能
Scripting Backend スクリプトバックエンドは、Unity がプロジェクトで C# コードをコンパイルし実行する方法を決定します。この設定は、iOS の場合はデフォルトで IL2CPP に設定されており、変更できません。

IL2CPP は C# コードを CIL にコンパイルし、CIL を C++ に変換し、その C++ をネイティブのマシンコードにコンパイルします。これは、ランタイムに直接実行されます。詳細は IL2CPP を参照してください。

IL2CPP スクリプティングバックエンドによって生成された C++ コードはインクリメンタルに更新され、インクリメンタルな C++ ビルドシステムが、ソースファイルの変更のみをコンパイルすることが可能になります。これにより、反復時間を大幅に短縮することができます。
API Compatibility Level Compatibility Level (互換性レベル) は、プロジェクトで使用できる .NET API を決定します。この設定はサードパーティ製のライブラリとの互換性に影響します。
ヒント サードパーティ製のアセンブリで問題が発生した場合は、API Compatibility Level セクションの方法を試みてください。
.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 Compatibility Level (API 互換性レベル) を選択できます。Windows を使用している場合は、サードパーティのソフトウェア Reflector を使用して、何が起こっているのか、そしてそれを修正する方法を理解できます。以下の手順に従ってください。

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

Apple-specific information

設定 機能
Camera Usage Description iOS デバイスでカメラにアクセスする理由を入力します。
Location Usage Description iOS デバイスの場所にアクセスする理由を入力します。
Microphone Usage Description iOS デバイスのマイクにアクセスする理由を入力します。
Use on Demand Resource オンデマンドリソースを使用するには、このオプションを有効にします。

有効にすると、Variant map for app slicing セクションが表示されます。
Ackelerometer Frequency 加速度センサーをサンプリングする頻度を定義します。頻度は 15Hz30Hz60Hz100Hz のいずれかに設定できます。または、Disbaled を選択して加速度センサーを無視します。
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 ボックスにロードするアセットへの参照を設定します。

デバイス情報

設定 機能
Disable HW Statistics これを有効にすると、アプリケーションがハードウェアに関する情報を Unity に送信しないように指示します。
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 以降のデバイスに制限します。
Automatically add capabilities このオプションを有効にすると、Unity は entitlements.plist ファイルを生成し、アプリケーションが実装する iOS API (例えば Game Center や Notifications) の機能を加えます。詳細は、Apple 開発者用ドキュメント Entitlements を参照してください。
Defer system gestures on edges システムのジェスチャを適用するために 2 回スワイプする必要があるエッジを選択します。オプションは Top EdgeLeft EdgeBottom EdgeRight Edge です。
Hide home button on iPhone X これを有効にすると、アプリケーションの実行中に iPhone X デバイスのホームボタンを非表示にします。
Render Extra Frame on Pause これを有効にすると、アプリケーションが一時停止しているときにフレームの後に追加のフレームを生成します。これにより、アプリケーションがバックグラウンドで実行されるときに、ポーズ状態を示すグラフィックスを表示します。
Enable Custom Background Behaviors ユーザーがホームボタンを押してアプリケーションをバックグラウンドにしたときにアプリが実行できることを選択します。例は、BackgroundFetch プロジェクトを参照してください。オプションは以下のとおりです。

- Audio, AirPlay, PiP
- Location updates
- Voice over IP
- Newsstand downloads
- External accessory communication
- Uses Bluetooth LE accessories
- Act as a Bluetooth LE accessory
- Background fetch
- Remote notifications

Variant map for app slicing

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

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

新しいバリアントを、プラス (+) とマイナス ( - ) のアイコンで加えたり、削除したりすることができます。また、リストからバリアントを選択し、その設定を Variant settings で表示または変更することもできます。Variant name を除くこれらの設定のいずれかで、Custom value を選択すると、追加のプロパティが下に現れ独自の値を入力できます。

設定 機能
Variant name 起動スクリプトのバリアントの名前を表示します。
Device このバリアントがターゲットとするデバイスを選択します。オプションには Any (デフォルト)、iPhoneiPadiWatchCustom value が含まれます。
Memory このバリアントに必要な最小メモリを選択します。オプションには Any (デフォルト)、1GB2GB3GB4GBCustom value が含まれます。
Graphics 使用する Metal フレームワーク を選択します。選択肢には Any (デフォルト)、Metal1v2Metal2v2Metal2v3Metal3v1Metal3v2Metal4v1Custom value があります。

詳しくは、Apple 開発者用ドキュメントの Metal を参照してください。
Display color space 使用する色域を選択します。選択肢には Any (デフォルト)、sRGBDisplayP3Custom value があります。

また、独自の設定を追加することもできます。Add custom entry ボタンをクリックすると、新しい一組のテキストボックスが表示されます。

  • <key>: 設定の名前を入力します。
  • <value>: この設定の値を入力します。

その他の設定

設定 機能
Architecture どのアーキテクチャーをターゲットにするか選択します。
Universal すべてのアーキテクチャをサポートします。これが推奨されるオプションです。
Armv7 以前の 32 ビット ARM アーキテクチャのみをサポートします。
Arm64 新しい 64 ビット ARM アーキテクチャのみをサポートします。アプリケーションがハイエンド端末のみをターゲットとしている場合は、このオプションを選択することをおすすめします。
Active Input Handling ユーザーからの入力をどのように処理するかを選択します。
Input Manager (Old) 従来の Input 設定を使用します。
Input System (New) 新しい Input システムを使用します。入力システムはこのリリースのプレビューパッケージとして提供されています。Input System のプレビュー版を使用するには、InputSystem パッケージ をインストールしてください。
Both 両方のシステムを同時に使用できます。

スクリプトのコンパイル

iOS プラットフォームのスクリプトコンパイル設定
iOS プラットフォームのスクリプトコンパイル設定
Setting Function
Scripting Define Symbols Set custom compilation flags. For more details, see the documentation on Platform dependent compilation.
Additional Compiler Arguments Add entries to this list to pass additional arguments to the Roslyn compiler. Use one new entry for each additional argument.
To create a new entry, press the ‘+’ button. To remove an entry, press the ‘-’ button.
When you have added all desired arguments, click the Apply button to include your additional arguments in future compilations.The Revert button resets this list to the most recent applied state.
Suppress Common Warnings Disable this setting to display the C# warnings CS0169 and CS0649.
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.
Use Deterministic Compilation Disable this setting to prevent compilation with the -deterministic C# flag. With this setting enabled, compiled assemblies are byte-for-byte identical each time they are compiled.
For more information, see Microsoft’s deterministic compiler option documentation.
Enable Roslyn Analyzers Disable this setting to compile user-written scripts without Roslyn analyzer DLLs that might be present in your project.
Use Roslyn Reference Assemblies Disable this setting to the compiler not to skip compilation reference assemblies when the metadata of the assembly does not change.

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 を使用するわけではありません。このオプションは、アプリケーションが使用しない DLL を削除して、ビルドされたプレイヤーのサイズを縮小します。アプリケーションが現在の設定で通常は削除される 1 つ以上のクラスを使用している場合、アプリケーションをビルドしようとすると Unity はデバッグメッセージを表示します。
Managed Stripping Level Unity が未使用のマネージ (C#) コードを削除する度合いを選択します。

Unity がアプリケーションをビルドするとき、Unity Linker プロセスはプロジェクトが使用するマネージ DLL の使用しないコードを削除します。コードを削除すると結果として得られる実行ファイルはかなり小さくなりますが、誤って実際に使用されているコードを削除することがあります。この設定では、Unity が未使用のコードをどれだけ積極的に削除するかを選択できます。

可能なオプションは、DisabledLowMediumHigh です。オプションについて詳しくは、 Managed code stripping を参照してください。

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 のブレンドシェイプのウェイトの範囲を固定できます。このオプションは非推奨であるため、今後使用しないでください。

XR Settings

ノート: XR SDK のビルトインサポートは非推奨となり、Unity の将来のバージョンで廃止される予定です。 代わりに Unity XR プラグインシステムを使用してください。詳細については、XR プラグインアーキテクチャ を参照してください。

XR Settings セクションを使用して、XR でのアプリケーションの動作を設定します。

スタンドアロンプレイヤーのXR設定
スタンドアロンプレイヤーのXR設定
設定 機能
Virtual Reality Supported VR アプリケーションの場合、これを有効にします。次に、必要な VR SDK をリストに加えます。
Virtual Reality SDKs リストから VR SDK を追加および削除します。 このリストは、Virtual Reality Supported が有効になっている場合にのみ使用できます。

- SDK をリストに追加するには、プラス (+) ボタンをクリックします。
- SDK をリストから削除するには、SDK を選択してマイナス (-) ボタンをクリックします。

一部の SDK は、ここに表示される設定以外も提供します。
Stereo Rendering Mode VR デバイスのレンダリング方法を選択します。
Multi Pass 通常のレンダリングモードです。Unity はシーンを 2 回レンダリングします。最初に左目の画像をレンダリングし、次に右目の画像をレンダリングします。
Single Pass 同時に両方の目の画像を 1 つにまとめたレンダーテクスチャにレンダリングします。つまり、シーン全体が 1 回だけレンダリングされるため、CPU 処理時間が大幅に削減されます。この設定は複数のプラットフォームに影響します。
iOS ビルド設定
Unity Remote