Linux Unity Player 設定 (メニュー: Edit > Project Settings > Player) を使用して、Unity が Linux アプリケーションをビルドして表示する方法を決定します。プレイヤー設定全般の説明については、プレイヤー設定を参照してください。
以下のセクションのプロパティが説明されています。
デスクトップゲームにカスタムアイコンを割り当てるには、Override for Windows, Mac, Linux 設定を有効にします。指定した各正方形に合ったさまざまなサイズのアイコンをアップロードできます。
##解像度と表示
Resolution and Presentation セクションの Resolution と Standalone Player Options を使用して、画面の表示をカスタマイズします。
このセクションでは、画面モードとデフォルトサイズをカスタマイズします。
| プロパティ | 説明 | |
|---|---|---|
| Run In background | このオプションを有効にすると、フォーカスを失ったときにアプリケーションをバックグラウンドで実行できます。無効にすると、フォーカスを失ったときにアプリケーションは一時停止します。 | |
| Fullscreen Mode | 全画面モードを選択します。起動時のデフォルトのウィンドウモードを定義します。 | |
| Fullscreen Window | アプリケーションウィンドウを全画面のネイティブディスプレイ解像度に設定し、画面全体をカバーするようにします。このモードは、ボーダレスフルスクリーンとも呼ばれます。Unity は、スクリプトによって設定された解像度、または何も設定されていない場合はネイティブディスプレイ解像度でアプリケーションコンテンツをレンダリングし、ウィンドウを埋めるように拡大縮小します。スケーリング時、Unity はディスプレイのアスペクト比に一致するようにレンダリングされた出力に黒い帯を追加して、コンテンツが引き伸ばされないようにします。このプロセスは レターボックス と呼ばれます。OS のオーバーレイ UI は全画面ウィンドウの上に表示されます (IME 入力ウィンドウなど)。このモードはすべてのプラットフォームがサポートします。 | |
| Exclusive Fullscreen (Windows only) | アプリケーションがディスプレイを常に全画面で使用するよう設定します。Fullscreen Window とは異なり、このモードでは、アプリケーションが選択した解像度に一致するようにディスプレイの OS 解像度を変更します。このオプションは Windows でのみサポートされます。 | |
| Maximized Window (Windows and Mac only) | アプリケーションウィンドウを OS の 最大化 の定義に設定します。Windows では、タイトルバーのある全画面ウィンドウです。macOS では、メニューバーとドックが非表示の全画面ウィンドウです。他のプラットフォームでは、Fullscreen Window がデフォルト設定です。 | |
| Windowed | アプリケーションを全画面ではない移動可能な標準のウィンドウに設定します。このウィンドウのサイズはアプリケーションの解像度によって異なります。このモードでは、ウィンドウはデフォルトでサイズ変更可能です。無効にするには、Resizable Window 設定を使用します。この全画面モードはすべてのデスクトッププラットフォームでサポートされています。 | |
| Default Is Native Resolution | このオプションを有効にすると、ターゲットマシン上で使用されるデフォルトの解像度を使用します。 ノート: このプロパティは、Fullscreen Mode を Windowed に設定した場合は表示されません。 |
|
| Default Screen Width | ゲーム画面のデフォルトの幅をピクセル単位で設定します。 ノート: このプロパティは、Fullscreen Mode を Windowed に設定したときのみ表示されます。 |
|
| Default Screen Height | ゲーム画面のデフォルトの高さをピクセル単位で設定します。 ノート: このプロパティは、Fullscreen Mode を Windowed に設定したときのみ表示されます。 |
|
| Mac Retina Support | このオプションを有効にすると、Mac で高 DPI (Retina) 画面をサポートします。これはデフォルトで有効です。これにより、Retina ディスプレイでプロジェクトの画質が向上しますが、リソース負荷が多少高くなります。 | |
このセクションでは、画面をカスタマイズするための設定を指定します。例えば、ユーザーが画面のサイズを変更するためのオプションや、同時に実行できるインスタンスの数を設定できます。
| プロパティ | 機能 |
|---|---|
| Use Player Log | このオプションを有効にすると、デバッグ情報を含むログファイルを作成します。デフォルトで有効になっています。 注意:アプリケーションを Mac App Store に送信する場合は、このオプションを無効のままにします。詳細については、Mac App Store への公開を参照してください。 |
| Resizable Window | このオプションを有効にすると、プレイヤーウィンドウのサイズを変更できます。 注意このオプションを無効にすると、アプリケーションは Windowed Fullscreen Mode を使用できなくなります。 |
| Visible in Background | このオプションを有効にすると、(Windows で) Windowed Fullscreen Mode オプションが使用されている場合にアプリケーションが背景で表示されます。 |
| Allow FullScreen Switch | これを有効にすると、デフォルトの全画面キーを押して全画面のモードと Windowed モードを切り替えることができます。 |
| Force Single Instance | これを有効にすると、デスクトッププレイヤーを 1 つの同時実行インスタンスに制限できます。 |
| Use DXGI flip model swap chain for D3D11 | 反転モデルを使用して、アプリケーションの表示に関する最適なパフォーマンスを確保します。フレームを表示する必要があるたびに、Unity はスワップチェーンの表面のコピーを作成し、それを画面バッファに転送します。この設定は、D3D11 グラフィックス API に影響します。このオプションを無効にすると、Windows 7 スタイルの BitBlt モデルにフォールバックします。Windowed (ボーダーレス) 全画面モードで実行すると、Unity はアプリケーションスワップチェーンを画面に直接表示します。これにより、入力の待ち時間が 1 フレーム短縮され、Desktop Window Manager によって排他的な画面と同じように行われるデスクトップ合成が行われなくなります。この最適化は「独立反転」と呼ばれます。詳細については、PlayerSettings.useFlipModelSwapchain を参照してください。 |
Virtual Reality Splash Image 設定を使用して、Virtual Reality ディスプレイのカスタムスプラッシュ画像を選択します。一般的なスプラッシュスクリーン設定については、スプラッシュスクリーンのページを参照してください。
##その他の設定
Other Settings のセクションでは、以下のグループに分類されたさまざまなオプションをカスタマイズできます。
これらの設定を使用して、デスクトップ (Windows、Mac、Linux) プラットフォーム向けにゲームをレンダリングする方法をカスタマイズします。
| プロパティ | 説明 | |
|---|---|---|
| Color Space | レンダリングに使用する色空間を選択します。詳細は、リニアレンダリング概要 を参照してください。 | |
| Gamma | ガンマ色空間は通常、フレームバッファ形式がチャンネルあたり 8 ビットに制限された古いハードウェアのライティングの計算に使用されます。最近のモニターはデジタルですが、入力に依然としてガンマエンコードされた信号を使用している場合もあります。 | |
| Linear | リニア色空間レンダリングでは、より正確な結果が得られます。リニア色空間の使用を選択すると、エディターはデフォルトで sRGB サンプリングを使用します。テクスチャ がリニア色空間の場合は、リニア色空間を使用し、各テクスチャの sRGB サンプリングを無効にする必要があります。 | |
| Auto Graphics API for Windows | このオプションを有効にすると、アプリケーションを実行する Windows マシンに最適なグラフィックス API を使用できます。これを無効にすると、サポートされているグラフィックス API を追加および削除できます。 | |
| Auto Graphics API for Mac | このオプションを有効にすると、アプリケーションを実行する macOS マシンに最適なグラフィックス API を使用できます。これを無効にすると、サポートされているグラフィックス API を追加および削除できます。 | |
| Auto Graphics API for Linux | このオプションを有効にすると、アプリケーションを実行する Linux マシンに最適なグラフィックス API を使用できます。これを無効にすると、サポートされているグラフィックス API を追加および削除できます。 | |
| color-gamut | この設定は Linux には適用されません。 | |
| Static Batching | static batching を使用するには、これを有効にします。 | |
| GPU Skinning | シェーダーを使用して、GPU でメッシュスキニングとブレンドシェイプを計算できます。 | |
| Graphics Jobs | グラフィックス処理 (レンダリングループ) を他の CPU コアで作動しているワーカースレッドに移行して軽くします。このオプションは、ボトルネックとなる可能性があるメインスレッドの Camera.Render の作業時間を短縮します。 |
|
| Lightmap Encoding | ライトマップのエンコードスキームと圧縮形式を定義します。 Low Quality、Normal Quality、High Quality から選択できます。 |
|
| HDR Cubemap Encoding | HDR キューブマップのエンコードスキームと圧縮形式を定義します。 Low Quality、Normal Quality、High 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 モードをサポートしていないディスプレイでは、ゲームは標準モードで実行されます。 | |
| Allow HDR Display Output | アプリケーション実行時に HDR モード出力を有効にします。これは、この機能をサポートするディスプレイでのみ機能します。ディスプレイが HDR モードをサポートしない場合、ゲームは標準モードで実行されます。 | |
| Use HDR Display Output: | メインディスプレイが HDR をサポートしているかどうかを確認し、サポートしている場合は、アプリケーションの起動時に HDR 出力に切り替えます。 ノート: このオプションは、Allow HDR Display Output がアクティブな場合にのみ使用できます。 |
|
| Virtual Texturing (Experimental) | このオプションを有効にすると、シーンに高解像度テクスチャが多数ある場合に、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 を参照してください。 | |
| プロパティ | 説明 | |
|---|---|---|
| SRGB Write Mode | このオプションを有効にすると、ランタイムに Graphics.SetSRGBWrite() レンダラーが sRGB 書き込みモードを切り替えます。これを使用して、リニアから sRGB への書き込み色変換を無効にします。 | |
| Number of swapchain buffers | Vulkan レンダラーでダブルバッファリングを使用するにはこのオプションを 2 に設定し、トリプルバッファリングを使用するには 3 に設定します。プラットフォームによってはこの設定で待ち時間が短くなる可能性がありますが、通常はデフォルト値 3 を変更しないでください。ダブルバッファリングは、パフォーマンスに悪影響を及ぼす可能性があります。 | |
| Acquire swapchain image late as possible | これを有効にすると、フレームがオフスクリーンステージング画像にレンダリングした後に、バックバッファが取得されます。この設定を有効にすると、バックバッファを表示する際にブリットが追加されます。この設定をダブルバッファリングと組み合わせることで、パフォーマンスを向上させることができます。ただし、ブリットが追加されることによって使用帯域幅が増えるため、パフォーマンスの問題が生じる可能性もあります。 | |
| Recycle command buffers | このオプションを有効にすると、Unity が実行した CommandBuffers をリサイクルできます。 | |
このセクションのプロパティは、macOS にのみ関連します。詳細については、macOS プレイヤー設定を参照してください。
| プロパティ | 説明 | |
|---|---|---|
| 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 | ビルドのサイズが小さくなり、完全なクロスプラットフォームをサポートします。 | |
| IL2CPP Code Generation | この設定は Linux には適用されません。 | |
| C++ Compiler Configuraion | この設定は Linux には適用されません。 | |
| Use incremental GC | インクリメンタルガベージコレクターを使用します。これにより、ガベージコレクションをいくつかのフレームに広げ、フレーム継続時間中にガベージコレクションに関連するスパイクを軽減します。詳しくは、自動メモリ管理 を参照してください。 | |
| Allow downloads over HTTP | HTTP 経由でのコンテンツのダウンロード許可を設定します。より安全な HTTPS プロトコルが推奨されているため、デフォルトではこのオプションは Not allowed になっています。 | |
| Not Allowed | HTTP 経由でのコンテンツのダウンロードを許可しません。 | |
| Allowed in Development Builds | 開発ビルドでのみ HTTP 経由のダウンロードを許可します。 | |
| Always Allowed | 開発ビルドとリリースビルドで HTTP 経由のダウンロードを許可します。 | |
| Active Input Handling | ユーザーの入力をどのように処理するかを選択します。 | |
| Input Manager (Old) | 従来の Input 設定を使用します。 | |
| Input System Package (New) | Input システムを使用します。このオプションを使用するには、InputSystem パッケージ をインストールする必要があります。 | |
| Both | 両方のシステムを使用します。 | |
すべてのターゲットに対する Mono の API 互換性レベルを選択できます。サードパーティの .NET ライブラリで、.NET 互換性レベルに該当しない機能が使用されることがあります。そのような場合に、状況を把握し、最適な修正方法を見つけるには、以下のお勧めの手順を試してください。
Frameworks/Mono/lib/mono/YOURSUBSET/ の下にあります。このセクションは macOS にのみ関連します。詳細については、macOS プレイヤー設定を参照してください。
| プロパティ | 説明 | |
|---|---|---|
| Shader Precision Model | シェーダーが使用するデフォルトの精度を選択します。詳細については、シェーダーでの 16 ビット精度の使用を参照してください。 | |
| Platform default | モバイルプラットフォームでは精度を低くし、他のプラットフォームでは最高精度にします。 | |
| Unified | プラットフォームでサポートされている場合は、低い精度を使用します。 | |
| Strict shader variant matching | シェーダーバリアントが見つからない場合は、エラーシェーダーを使用し、コンソールにエラーを表示します。 | |
| Keep Loaded Shaders Alive | ロードされたすべてのシェーダーを存続させ、アンロードされないようにします。 | |
これらの設定を使用して、ランタイムにシェーダーが使用するメモリ量を制御します。
| プロパティ | 説明 |
|---|---|
| Default chunk size (MB) | すべてのプラットフォームのビルドされたアプリケーション内に Unity が保存する、圧縮されたシェーダーバリアントのデータチャンクの最大サイズを設定します。デフォルト値は 16 です。詳細は、シェーダーのロード を参照してください。 |
| Default chunk count | Unity がすべてのプラットフォームのメモリに保持する解凍チャンク数のデフォルト制限を設定します。デフォルトは 0、つまり制限はありません。 |
| Override | このビルドターゲットの Default chunk size と Default chunk count のオーバーライドを有効にします。 |
| Chunk size (MB) | このビルドターゲットの Default chunk size (MB) の値をオーバーライドします。 |
| Chunk count | このビルドターゲットの Default chunk count の値をオーバーライドします。 |
| プロパティ | 説明 |
|---|---|
| Scripting Define Symbols | カスタムコンパイルフラグを設定します。 詳細については、プラットフォーム依存のコンパイルを参照してください。 |
| Additional Compiler Arguments | このリストにエントリーを追加し、Roslyn コンパイラーに追加の引数を渡します。引数を追加するごとに 1 つの新しいエントリーを使用します。 新しいエントリーを作成するには、Add (+) をクリックします。エントリーを削除するには、Remove (-) をクリックします。 必要な引数をすべて追加して、Apply をクリックすると、その後のコンパイルに追加の引数が含まれるようになります。Revert をクリックすると、このリストが最近適用された状態にリセットされます。 |
| Suppress Common Warnings | C# の警告 CS0169 と CS0649 を表示するかどうかを指定します。 |
| Allow ‘unsafe’ Code | 事前定義されたアセンブリ (例えば Assembly-CSharp.dll など) での ‘unsafe’ C# コード のコンパイルのサポートを有効にします。アセンブリ定義ファイル ( .asmdef) の場合は、.asmdef ファイルの 1 つをクリックして、表示される Inspector ウィンドウでオプションを有効にします。 |
| Use Deterministic Compilation | deterministic C# フラグを使用して、コンパイルを阻止するかどうかを指定します。この設定を有効にすると、コンパイルされるアセンブリは、コンパイルされるたびにバイト単位で同じになります。 詳細については、コード生成を制御する C# コンパイラーオプションを参照してください。 |
| プロパティ | 説明 | |
|---|---|---|
| Prebake Collision Meshes | ビルド時に メッシュ に衝突データを追加します。 | |
| Preloaded Assets | 起動時にプレイヤーが読み込むためのアセットの配列を設定します。 新しいアセットを追加するには、Size プロパティの値を引き上げ、表示される新しい Element ボックスに読み込むようにアセットへの参照を設定します。 |
|
| Vertex Compression | チャンネルごとに頂点圧縮を設定します。これはプロジェクト内のすべてのメッシュに影響します。 通常、頂点圧縮は、メモリ内のメッシュデータのサイズを縮小し、ファイルサイズを削減し、GPU パフォーマンスを向上するために使用します。 頂点圧縮の設定方法とこの設定の制限については、メッシュデータの圧縮 を参照してください。 |
|
| Optimize Mesh Data | このオプションを有効にすると、ビルドで使用されるメッシュから未使用の頂点属性が削除されます。このオプションは、メッシュ内のデータ量を削減し、ビルドサイズ、ロード時間、ランタイムのメモリ使用量の削減を支援します。 注意: この設定を有効にしている場合は、ランタイムにマテリアルやシェーダーの設定を変更しないようにしてください。 詳細については PlayerSettings.stripUnusedMeshComponents を参照してください。 |
|
| テクスチャミップマップのストリッピング | すべてのプラットフォームでミップマップのストリッピングを有効にします。これにより、ビルド時にテクスチャから未使用のミップマップレベルが削除されます。 Unity は、ミップマップのレベルを現在のプラットフォームの品質設定と比較して、未使用のミップマップレベルを判別します。ミップマップレベルが現在のプラットフォームのすべての品質設定の範囲外にある場合は、ビルド時にそれらのミップマップレベルをビルドから削除します。 QualitySettings.globalTextureMipmapLimit が削除されたミップマップレベルに設定されている場合、Unity は削除されていない最も近いミップマップレベルに値を設定します。 |
|
各ログタイプに対応するオプションを有効にして、目的のログタイプを選択します。
| プロパティ | 説明 |
|---|---|
| なし | ログは記録されません。 |
| ScriptOnly | スクリプトの実行時にのみログを記録します。 |
| full | 常にログを記録します。 |
詳細については、スタックトレースのログを参照してください。
| プロパティ | 機能 |
|---|---|
| Clamp BlendShapes (Deprecated) | このオプションを有効にすると、SkinnedMeshRenderers でブレンドシェイプのウェイトの範囲を固定できます。 |