Scriptable RenderLoop settings (スクリプト可能なレンダーループ設定) は実験的な設定で、Unity のデフォルトのレンダリングパイプラインを使う代わりに、コマンド群を定義しシーンをどのようにレンダリングするかを正確に制御することができます。この実験的な機能に関する詳細は、GitHub の Scriptable Render Pipeline ドキュメントを参照してください。
これらのプロパティーは様々なレンダリングの設定を制御します。
設定 | 説明 |
---|---|
Transparancy Sort Mode | Unityのレンダラーはレイヤー番号やカメラからの距離などいくつかの基準によってソートされます。Transparency Sort Mode では、レンダリング可能なオブジェクトを特定の軸に沿った距離で順番づけることができます。これは、一般的に 2D の開発にのみ役に立ちます。例えば、スプライトを高さ、または、 Y 軸に沿ってソートします。 |
Default | オブジェクトをカメラモードに基づいてソートします。 |
Perspective | オブジェクトを透視投影ビューに基づいてソートします。 |
Orthographic | オブジェクトを平行投影ビューに基づいてソートします。 |
Transparancy Sort Axis | これを使ってカスタムの Transparency Sort Mode を設定します。 |
この設定を使うと、ビルトインの定義を微調節して、レンダリングとシェーダーコンパイルにプラットフォーム特定の調整を行うことができます。例えば、これを使って、ハイスペックの iOS デバイスでカスケードシャドウを有効にする一方、ロースペックの iOS デバイスでカスケードシャドウを無効にして、パフォーマンスを向上させることができます。階層は Rendering.GraphicsTier で定義できます。
プロパティー | 機能 |
---|---|
Standard Shader Quality | スタンダードシェーダーの品質を選択することができます。 |
Reflection Probes Box Projection | リフレクションプローブのボックスプロジェクションを使用するかどうかを指定できます。 |
Reflection Probes Blending | リフレクションプローブのブレンド機能を使用するかどうかを指定します。 |
Detail Normal Map | 詳細な法線マップをサンプリングするかどうかを指定します。 |
Enable Semitransparent Shadows | 詳細な半透明の影をサンプリングするかどうかを指定します。 |
Cascaded Shadows | カスケードシャドウマップを使用するかどうかを指定します。 |
Use HDR | これを有効にすると、この階層の HDR レンダリングを可能にします行うことができます。無効にすると、この階層の HDR レンダリングを行えません。詳しくは HDR レンダリング を参照してください。 |
HDR Mode | 階層に使用する CameraHDRMode |
Rendering Path | 使用するレンダリングパス |
この設定を使って、リストされている各レンダリングパスのどのシェーダーでライティングパスの計算を行うかを特定します。
シェーダー | 計算 |
---|---|
Deferred | ディファードライティングを使用するときに、選択します。 [Camera: Rendering Path)(class-Camera) を参照してください。 |
Deferred Reflection | ディファードライティングと一緒にディファードリフレクション (つまり、リフレクションプローブ) を使用するときに、これを選択します。 [Camera: Rendering Path)(class-Camera) を参照してください。 |
Screen Space shadows | スクリーン空間のシャドウを使用するときに、これを選択します。 |
Legacy deferred | 古いディファードライティングを使用するときに、これを選択します。 [Camera: Rendering Path)(class-Camera) を参照してください。 |
Motion Vectors | 古いデファードライティングを使用するときに、これを使います。MeshRenderer::Motion Vectors を参照してください。 |
設定 | 説明 |
---|---|
Built-in shader (デフォルト値) | Unity のビルトインシェーダーを使用して計算を行います。 |
Custom shader | 自身の適切なシェーダーを使用して計算を行います。ディファードレンダリングを深くカスタマイズすることができます。 |
No Support | 計算を行わないようにします。ディファードシェーディングやでライティングを使用しない場合に有効にすると、作成されたゲームのデータファイルのスペースを節約できます。 |
シーン中で使用する/しないに関わらず、常にプロジェクトに入れておきたいシェーダーのリストを作成します。ストリーミングされるアセットバンドルからのアクセスを確実なものにするためには、アセットバンドルが使用するシェーダーをこのリストに追加しておくことが重要です。
ライティングとフォグに関わるシェーダーを除去することにより、ビルドのデータサイズを小さくし、読み込み時間を短縮します。
設定 | 説明 |
---|---|
Automatic (デフォルト) | Unity は、シーンやライトマップの設定を基にして、使用されていない Fog モードや Light map モードを判定し、それに関連する種類のシェーダーバリアントを省きます。 |
Manual | 使用するモードを手動で指定します。アセットバンドルのビルド を行う場合や、ランタイムに Fog モードをスクリプトで変更する場合は、これを選択します。使用したいモードが含まれていることを確認してください。 |
設定 | 説明 |
---|---|
Strip Unused (デフォルト) | プロジェクトをビルドするときに、シェーダーを参照するマテリアルの少なくとも 1 つで “Enable instancing” が有効である場合には、Unity はインスタンシングシェーダーだけしか持ちません。Unity は “Enable instancing” が有効なマテリアルに参照されていないシェーダーをすべて除去します。 |
Strip All | たとえ使用中であっても、すべてのインスタンシングシェーダーバリアントを除去します。 |
Keep All | たとえ使用されていなくても、すべてのインスタンシングシェーダーバリアントを維持します。 |
インスタンシングバリアントに関する詳しい情報はGPU インスタンシング を参照してください。
ゲームのロード時に読み込むシェーダーバリアントコレクションアセットのリストを指定します。このリストで指定されたシェーダーバリアントは、アプリケーションの存続期間中ずっと保持されます。頻繁に使用されるシェーダーの読み込みに使用します。詳細は、シェーダーのロード時間を最適化 を参照してください。