Version: Unity 6.0 (6000.0)
言語 : 日本語
ShaderLab リファレンスの ZWrite コマンド
ShaderLab の古い機能のリファレンス

ShaderLab の PackageRequirements ブロックリファレンス

サブシェーダーまたはパスのパッケージ要件を指定するには、PackageRequirements ブロックを使用します。ShaderLab は 1 つのサブシェーダーまたはパスにつき 1 つの PackageRequirements ブロックをサポートしますが、各ブロックは複数のパッケージ要件を指定することができます。

レンダーパイプラインの互換性

機能名 ユニバーサルレンダーパイプライン (URP) HD レンダーパイプライン (HDRP) カスタム SRP ビルトインレンダーパイプライン
ShaderLab: PackageRequirements block はい はい はい はい

構文

ノート: PackageRequirements ブロックを提供する場合、これは、サブシェーダーまたはパス内の他のすべての宣言の前に来る必要があります。

シグネチャ 機能
PackageRequirements{ [requirement definition]} パスまたはサブシェーダーのパッケージ要件を定義します。

パッケージ要件を宣言する方法は複数あります。それぞれ、異なる動作を提供します。相違点:

  • “<package name>”: サブシェーダーまたはパスが、どのバージョンのパッケージでも動作することを指定します。
  • “<package name>”: “<version restrictions>”: サブシェーダーまたはパスが、パッケージバージョンのサブセットでのみ動作することを指定します。
  • “<package name>”: “unity=<version restrictions>”: サブシェーダーまたはパスが Unity バージョンのサブセットでのみ動作し、指定した名前のパッケージが必要であることを指定します。
  • “unity”:“<version restrictions>”: サブシェーダーまたはパスが、Unity バージョンのサブセットでのみ動作することを指定します。

バージョン構文

ShaderLab のパッケージ要件では、バージョンは major.minor または major.minor.patch の形式を使用します。major.minor のみを使用する場合、Unity は patch0 を使用します。パッケージのバージョンには -preview-preview.n という postfix (接尾辞) を入れることもできます。ここで -preview-preview.0 と同じ意味です。プレビュー版は非プレビュー版の前に置かれます。ですから、1.2.3-preview.41.2.2 の後、かつ 1.2.3 の前にきます。

バージョン範囲を指定する方法は複数あります。それぞれ、異なる動作を提供します。相違点:

  • <version>: 入力したバージョンと、それ以降のすべてのバージョンを含みます。例えば、1.2.3 は、1.2.3 から始まるすべてのバージョンを含みます。
  • [<version>]: 正確なバージョンを指定します。例えば、[1.2.3] は、バージョン 1.2.3 のみを含みます。
  • [<version1>,<version2>]: <version1> と <version2> の間の範囲を指定します。角かっこ/丸かっこを使用すると、それぞれ、バージョンが範囲に含まれます/除外されます。開きかっこは <version1> に、閉じかっこは <version2> に作用します。例えば、[1.2.3,2.3.4) は、1.2.3 から 2.3.3 までのすべてのバージョンを含みます。

また、1 つのパッケージに対して、バージョン範囲のセットを指定することもできます。個々の範囲からバージョン範囲のセットを作成するには、セパレーター文字としてセミコロンを使用します。例えば、[2.0,3.4.5];[3.7];4.0 は、バージョン 2.0.0 から 3.4.5 まで、バージョン 3.7.0、そしてバージョン 4.0.0 以降のバージョンを含んでいます。

パッケージのバージョンを設定する場合、以下の点に注意してください。

  • バージョン、バージョン範囲、およびバージョン範囲のセットには、余分な文字を含むことはできません。
  • バージョン範囲は空にできません。
  • 揃いのバージョン範囲は、交差することはありません。
  • パッケージ要件は空白も違いとして認識します。

構文が上記に従わない場合、そのバージョン制限は無効です。無効なパッケージ要件で何が起こるかについての詳細は、エラーチェック を参照してください。

追加リソース

ShaderLab リファレンスの ZWrite コマンド
ShaderLab の古い機能のリファレンス