Rendering
レンダリングに関するプロパティが多く含まれています。 Shaderlab特有の機能もこの中に含まれます。
レンダリングモード (PASS)
Cutout、Transparentといった描写の方式を設定します。
大雑把にカメラのピンボケに反映されるか否かといった違いがあります。
パスの切り替えを行っているため、アニメーションによる変更では反映されません。
| Value | Description |
|---|---|
Cutout | 透過方式にカットアウトを利用します。スムーズな透過にはなりませんが奥行きの情報は正確です。 |
Transparent | 透過方式にTransparentを利用します。綺麗に透過しますが、奥行きの情報を出力しません。 |
DepthOnly | 奥行きの情報のみを出力します。 詳細はカメラのピンボケ対応(Depth Write)をご確認ください。 |
カリングモード
カリングの方法を設定するプロパティです。
| Value | Number | Description | RawProperty |
|---|---|---|---|
Off | 0 | ポリゴンの両面を描写します。 | _Cull |
Front | 1 | ポリゴンの表面を描写しません。 | " |
Back | 2 | ポリゴンの裏面を描写しません。 | " |
Z Write
デプスバッファの書き込みを許可するかを設定します。
現在はインスペクター上では直接操作できず、レンダリングモードに応じて状態が自動的に変化します。
| Value | Number | Description | RawProperty |
|---|---|---|---|
Off | 0 | デプスバッファを書き込みません。 | _ZWrite |
On | 1 | デプスバッファを書き込みます。 | " |
透明レンダーキュー (QUEUE)
レンダリングモードがTransparentの時にのみ反映、操作が可能です。
3000~5000のいずれかのTransparentレンダーキューを設定します。
カットアウトレンダーキュー (QUEUE)
レンダリングモードがCutoutの時にのみ反映、操作が可能です。
2001~2499のいずれかのGeometryレンダーキューを設定します。
WARNING
カットアウトレンダーで2000が使えないのは描写がおかしい不具合が発生しているため、制限をかけています。
ビルボード描写を有効にする
チェックを入れるとビルボード描写にします。
| Value | Number | Description | RawProperty |
|---|---|---|---|
False | 0 | ビルボード描写を無効にします。 | _BillboardEnable |
True | 1 | ビルボード描写を有効にします。常にカメラの向きの反対方向へ向きます。 | " |
奥行きのスケールを0にする
ビルボード描写が有効時、反映、操作が可能です。
チェックを入れると常に前後のスケールが0になります。
| Value | Number | Description | RawProperty |
|---|---|---|---|
False | 0 | 奥行きのスケールを従来通りにします。 | _Forced_Z_Scale_Zero |
True | 1 | 奥行きのスケールを0にします。 | " |
fwidth()の使用
シェーダー内でfwidth()関数を使用します。
これを使うことで各辺の比率の異なるメッシュも均一に線が描写されるようになります。
| Value | Number | Description | RawProperty |
|---|---|---|---|
False | 0 | fwidth()関数を使用しない処理に切り替えます。 | _FwidthEnable |
True | 1 | fwidth()関数を使用する処理に切り替えます。 | " |
ワイヤーフレーム描写の距離補正
fwidth()の使用が有効時、反映、操作が可能です。
| Value | Number | Description | RawProperty |
|---|---|---|---|
False | 0 | 描写がピクセルサイズに準じるようになります。 描写距離が変わるとピクセルサイズに合わせて線が小さくなったり、消えてしまうこともあるためご注意ください。 | _DistanceInfluence |
True | 1 | カメラとの距離に応じた処理が含まれ、離れれば適切に小さくなり、近づけば大きく見えるように、自然な描写にします。 | " |
ディレクショナルライトの影響を有効にする (KEYWORD)
チェックを入れるとディレクショナルライトの影響を受けるようになり、光源と影が反映されるようになります。
トグルはshader_featureによる制御のため、アニメーションによる操作では反映されません。
| Value | Number | Description | Keyword |
|---|---|---|---|
False | 0 | ディレクショナルライトの影響は受けません。 | _ |
True | 1 | ディレクショナルライトの影響を受けるようになります。 | _ACTIVATE_DIRECTIONALLIGHT_INFLUENCE |
| Property | Description | RawProperty |
|---|---|---|
| 影響量 | 1に近いほどディレクショナルライトの影響を受けるようになります。 | _DirectionalLightInfluence |
環境光の影響を有効にする (KEYWORD)
チェックを入れると環境光の影響を受けるようになります。
トグルはshader_featureによる制御のため、アニメーションによる操作では反映されません。LightVolumesの影響が有効な場合、無効になります。
| Value | Number | Description | Keyword |
|---|---|---|---|
False | 0 | 環境光の影響は受けません。 | _ |
True | 1 | 環境光の影響を受けるようになります。 | _ACTIVATE_AMBIENT_INFLUENCE |
| Property | Description | RawProperty |
|---|---|---|
| 影響量 | 1に近いほど環境光の影響を受けるようになります。 | _AmbientInfluence |
LightVolumesの影響を有効にする (KEYWORD)
LightVolumesはVRChat等で提供されているサードパーティ製の光源表現のシステムです。
チェックを入れるとLightVolumesの影響を受けるようになります。
トグルはshader_featureによる制御のため、アニメーションによる操作では反映されません。
有効時、環境光の描写も含まれるため、環境光の影響は無効になります。
| Value | Number | Description | Keyword |
|---|---|---|---|
False | 0 | LightVolumesの影響は受けません。 | _ |
True | 1 | LightVolumesの影響を受けるようになります。 | _ACTIVATE_LIGHTVOLUMES |
| Property | Description | RawProperty |
|---|---|---|
| 影響量 | 1に近いほどLightVolumesの影響を受けるようになります。 | _LightVolumesInfluence |
その他
プレビューモード
アルファで透過された部分は黒く描写する、確認用のプレビューモードを有効にします。
エディター限定機能ではなく、実際に描写が反映されるためご注意ください。
| Value | Number | Description | RawProperty |
|---|---|---|---|
False | 0 | プレビューモードを無効にします。 | _PreviewEnable |
True | 1 | プレビューモードを有効にします。 | " |
アンチエイリアスを有効にする
簡易的なアンチエイリアスを有効にします。
| Value | Number | Description | RawProperty |
|---|---|---|---|
False | 0 | アンチエイリアスを無効にします。 | _AntiAliasingEnable |
True | 1 | アンチエイリアスを有効にします。 | " |
Fallback Texture
このシェーダーが使用できなかった場合、フォールバックシェーダーへ自動的に切り替わります。
その際に自動的に使用されるテクスチャの設定ができます。Noneの場合でも白色の半透明のテクスチャが割り当てられます。
その他のレンダリング設定
| Property | Description | RawProperty |
|---|---|---|
| Z Clip | 深度クリップモードを設定します。 | _ZClip |
| Z Test | 深度テストの条件を設定します。 | _ZTest |
| Color Mask | カラーチャンネルの書き込みをマスクする色要素を選択します。 | _ColorMask |
| Offset Factor Offset Units | 深度バイアスを調整します。 | _OffsetFactor_OffsetUnits |
| Alpha to Mask | Alpha to coverageを有効にします。レンダリングモードがCutoutの場合は強制的にOnになります。 | _AlphaToMask |
ステレオ合成モード (KEYWORD)
ステレオレンダリング時に左右のカメラの位置や向きの中間を取って描写することができます。shader_featureによる制御のため、アニメーションによる操作では反映されません。
通常はNone、もしくはRotationにしてください。
| Value | Number | Description | Keyword |
|---|---|---|---|
None | 0 | 何も平均化しません。 | _STEREOMERGEMODE_NONE |
Position | 1 | 座標を中間にします。左右で同じ位置に描写されるため、奥行きが分からなくなるような錯覚を受けます。 | _STEREOMERGEMODE_POSITION |
Rotation | 2 | 向きを中間にします。Pimaxといった、左右のカメラで異なる向きを持つ特殊な描写環境に対して調整する目的で使用されます。 | _STEREOMERGEMODE_ROTATION |
Position_Rotation | 3 | 座標と向きを中間にします。 | _STEREOMERGEMODE_POSITION_ROTATION |
| Property | Description | RawProperty |
|---|---|---|
| Blend Op Src Blend Dst Blend | レンダーターゲットとのブレンド方法を設定します。詳細はUnityのBlend Opマニュアルを参照してください。 | _BlendOp_SrcBlend_DstBlend |
| Blend Op Alpha Src Blend Alpha Dst Blend Alpha | アルファのレンダーターゲットとのブレンド方法を設定します。 | _BlendOpAlpha_SrcBlendAlpha_DstBlendAlpha |
| Double Sided Global Illumination | ライトベイク時に、裏面のメッシュも考慮されるようになります。 |