ShaderLab の LOD ディレクティブのリファレンス
ShaderLab の UsePass ディレクティブのリファレンス
ShaderLab の SubShader タグのリファレンス
このページには、ShaderLab コードの Tags ブロックを使用して、タグを SubShader に割り当てるための情報が記載されています。
SubShader の定義については、ShaderLab: SubShader の定義を参照してください。シェーダーオブジェクトがどのように機能するか、およびシェーダーオブジェクト、SubShader、Pass の関係については、シェーダーオブジェクトを参照してください。
レンダーパイプラインの互換性
| 機能名 |
ユニバーサルレンダーパイプライン (URP) |
HD レンダーパイプライン (HDRP) |
カスタム SRP |
ビルトインレンダーパイプライン |
| ShaderLab: SubShader Tags ブロック |
はい |
はい |
はい |
はい |
| ShaderLab: RenderPipeline SubShader タグ |
はい |
はい |
いいえ |
いいえ |
| ShaderLab: Queue SubShader タグ |
はい |
はい
|
はい
ノート: カスタムの SRP では、独自のレンダリング順序を定義し、レンダーキューを使用するかどうかを選択できます。詳しくは、DrawingSettings と SortingCriteria を参照してください。 |
はい |
| ShaderLab: RenderType SubShader タグ |
はい |
はい |
はい |
はい |
| ShaderLab: DisableBatching SubShader タグ |
はい |
はい |
はい |
はい |
| ShaderLab: ForceNoShadowCasting SubShader タグ |
はい |
はい
これは、通常のシャドウを無効にしますが、コンタクトシャドウには影響しません。 |
はい |
はい |
| ShaderLab: CanUseSpriteAtlas SubShader タグ |
はい |
はい |
はい |
はい |
| ShaderLab: PreviewType SubShader タグ |
はい |
はい |
はい |
はい |
構文
| シグネチャ |
機能 |
| Tags { “[name1]” = “[value1]” “[name2]” = “[value2]”} |
指定されたタグを SubShader に適用します。
タグは数に制限なく定義できます。 |
RenderPipeline タグ
| シグネチャ |
機能 |
| “RenderPipeline” = “[名前]” |
この SubShader が URP と HDRP のどちらに対応しているかを Unity に伝えます。 |
| パラメーター |
値 |
機能 |
| [名前] |
UniversalPipeline |
この SubShader は、URP にのみに対応します。 |
|
HDRenderPipeline |
この SubShader は、HDRP にのみに対応します。 |
|
(それ以外の値、または宣言されていない場合) |
この SubShader は URP と HDRP のどちらにも対応しません。 |
Queue タグ
| シグネチャ |
機能 |
| “Queue” = “[キューの名前]” |
名前付きのレンダーキューを使用します。 |
| “Queue” = “[キューの名前] + [オフセット]” |
名前付きキューから所定のオフセットで、名前のないキューを使用します。
これが役に立つ例として、すき通った水の場合があります。不透明なオブジェクトの後に、かつ、透明なオブジェクトより前に描く必要があります。 |
| シグネチャ |
値 |
機能 |
| [キューの名前] |
Background |
Background のレンダーキューを指定します。 |
|
Geometry |
Geometry のレンダーキューを指定します。 |
|
AlphaTest |
AlphaTest のレンダーキューを指定します。 |
|
Transparent |
Transparent のレンダーキューを指定します。 |
|
Overlay |
Overlay のレンダーキューを指定します。 |
| [オフセット] |
整数 |
Unity が無名のキューをレンダリングする際の、名前付きキューに相対的なインデックスを指定します。 |
RenderType タグ
| シグネチャ |
機能 |
| “RenderType” = “[renderType]” |
この SubShader の RenderType 値を設定します。 |
| シグネチャ |
値 |
機能 |
| [renderType] |
文字列 |
このパラメーターの設定値はありません。置き換えたい SubShader の RenderType の値を特定するには、そのシェーダーのソースファイルを開きます。
Unity の古いビルトインシェーダーの RenderType SubShader タグは、シェーダーの置き換えのページに一覧表示されます。
カスタムの SubShader に独自の値を作成することもできます。 |
ForceNoShadowCasting タグ
| シグネチャ |
機能 |
| “ForceNoShadowCasting” = “[状態]” |
この SubShader を使用するすべてのジオメトリの影の作成 (場合によっては影を受けること) を防止するかどうか。 |
| シグネチャ |
値 |
機能 |
| [状態] |
True |
Unity は、この SubShader のジオメトリがシャドウをキャストすることを防止します。
ビルトレンダーパイプラインの Forward または Legacy Vertex Lit のレンダリングパスでは、Unity はこの SubShader のジオメトリがシャドウを受けるのを防止します。
HDRP では、これによってジオメトリがコンタクトシャドウをキャストすることは防止されません。 |
|
False |
Unity は、SubShader 内のジオメトリがシャドウをキャストしたり受けたりすることを防止しません。これはデフォルト値です。 |
DisableBatching タグ
| シグネチャ |
機能 |
| “DisableBatching” = “[状態]” |
Unity が、この SubShader を使用するすべてのジオメトリに対して動的バッチを防止するかどうか。 |
| シグネチャ |
値 |
機能 |
| [状態] |
True |
Unity は、この SubShader を使用するすべてのジオメトリに対して動的バッチを防止します。 |
|
False |
Unity は、この SubShader を使用するすべてのジオメトリに対して動的バッチを防止しません。これはデフォルト値です。 |
|
LODFading |
LODGroup の一部であり、Fade Mode が None ではないすべてのジオメトリに対して、Unity は動的バッチを防止します。それ以外の場合は、Unityは動的バッチを防止しません。 |
IgnoreProjector タグ
| シグネチャ |
機能 |
| “IgnoreProjector” = “[状態]” |
Unity がこのジオメトリをレンダリングする際に Projector を無視するかどうか。 |
| シグネチャ |
値 |
機能 |
| [状態] |
True |
Unity は、このジオメトリをレンダリングする際に Projector を無視します。 |
|
False |
Unity は、このジオメトリをレンダリングする際に Projector を無視しません。これはデフォルト値です。 |
PreviewType タグ
PreviewType SubShader タグは、この SubShader を使用しているマテリアルを Inspector でどのように表示するかを Unity エディターに伝えます。
| シグネチャ |
機能 |
| “PreviewType” = “[形状]” |
Unity エディターが、この SubShader を使用するマテリアルのプレビューを表示する際に使用する形状。 |
| シグネチャ |
値 |
機能 |
| [形状] |
Sphere |
マテリアルをスフィアに表示します。これはデフォルト値です。 |
|
Plane |
マテリアルを平面に表示します。 |
|
スカイボックス |
マテリアルをスカイボックスに表示します。 |
追加リソース
ShaderLab の LOD ディレクティブのリファレンス
ShaderLab の UsePass ディレクティブのリファレンス