Skip to content

Rendering

レンダリングに関するプロパティが多く含まれています。 Shaderlab特有の機能もこの中に含まれます。

レンダリングモード

Cutout、Transparentといった描写の方式を設定します。
大雑把にカメラのピンボケに反映されるか否かといった違いがあります。

ValueDescriptionKeyword
Cutout透過方式にカットアウトを利用します。スムーズな透過にはなりませんが奥行きの情報は正確です。_RENDERINGMODE_CUTOUT
Transparent透過方式にTransparentを利用します。綺麗に透過しますが、奥行きの情報を出力しません。_RENDERINGMODE_TRANSPARENT
DepthOnly奥行きの情報のみを出力します。
詳細はカメラのピンボケ対応(Depth Write)をご確認ください。
_RENDERINGMODE_DEPTHONLY

カリングモード

カリングの方法を設定するプロパティです。

ValueNumberDescriptionRawProperty
Off0ポリゴンの両面を描写します。_Cull
Front1ポリゴンの表面を描写しません。"
Back2ポリゴンの裏面を描写しません。"

Z Write

デプスバッファの書き込みを許可するかを設定します。
現在はインスペクター上では直接操作できず、レンダリングモードに応じて状態が自動的に変化します。

ValueNumberDescriptionRawProperty
Off0デプスバッファを書き込みません。_ZWrite
On1デプスバッファを書き込みます。"

透明レンダーキュー

レンダリングモードTransparentの時にのみ反映、操作が可能です。
3000~5000のいずれかのTransparentレンダーキューを設定します。

カットアウトレンダーキュー

レンダリングモードCutoutの時にのみ反映、操作が可能です。
2001~2499のいずれかのGeometryレンダーキューを設定します。

WARNING

カットアウトレンダー2000が使えないのは描写がおかしい不具合が発生しているため、制限をかけています。

ビルボード描写を有効にする

チェックを入れるとビルボード描写にします。

ValueNumberDescriptionKeyword
False0ビルボード描写を無効にします。_
True1ビルボード描写を有効にします。常にカメラの向きの反対方向へ向きます。_BILLBOARD_MODE

奥行きのスケールを0にする*

ビルボード描写が有効時、反映、操作が可能です。
チェックを入れると常に前後のスケールが0になります。

RawProperty
_Forced_Z_Scale_Zero

fwidth()の使用

シェーダー内でfwidth()関数を使用します。
これを使うことで各辺の比率の異なるメッシュも均一に線が描写されるようになります。

ValueNumberDescriptionKeyword
False0fwidth()関数を使用しない処理に切り替えます。_
True1fwidth()関数を使用する処理に切り替えます。_USE_FWIDTH

ワイヤーフレーム描写の距離補正*

fwidth()の使用が有効時、反映、操作が可能です。
0にするとピクセルサイズに準じるようになります。
描写距離が変わるとピクセルサイズに合わせて線が小さくなったり、消えてしまうこともあるため要注意です。
1にすると、カメラとの距離も処理に含まれ、離れれば適切に小さくなり、近づけば大きく見えるように、自然な描写にします。

RawProperty
_DistanceInfluence

ディレクショナルライトの影響

チェックを入れるとディレクショナルライトの影響を受けるようになり、光源と影が反映されるようになります。

ValueNumberDescriptionKeyword
False0ディレクショナルライトの影響は受けません。_
True1ディレクショナルライトの影響を受けるようになります。_ACTIVATE_DIRECTIONALLIGHT_INFLUENCE
PropertyDescriptionRawProperty
影響量*1に近いほどディレクショナルライトの影響を受けるようになります。_DirectionalLightInfluence

環境光の影響

チェックを入れると環境光の影響を受けるようになります。
LightVolumesの影響が有効な場合、無効になります。

ValueNumberDescriptionKeyword
False0環境光の影響は受けません。_
True1環境光の影響を受けるようになります。_ACTIVATE_AMBIENT_INFLUENCE
PropertyDescriptionRawProperty
影響量*1に近いほど環境光の影響を受けるようになります。_AmbientInfluence

LightVolumesの影響

LightVolumesはVRChat等で提供されているサードパーティ製の光源表現のシステムです。
チェックを入れるとLightVolumesの影響を受けるようになります。
有効時、環境光の描写も含まれるため、環境光の影響は無効になります。

ValueNumberDescriptionKeyword
False0LightVolumesの影響は受けません。_
True1LightVolumesの影響を受けるようになります。_ACTIVATE_LIGHTVOLUMES
PropertyDescriptionRawProperty
影響量*1に近いほどLightVolumesの影響を受けるようになります。_LightVolumesInfluence

その他

プレビューモード

アルファで透過された部分は黒く描写する、確認用のプレビューモードを有効にします。
エディター限定機能ではなく、実際に反映されるためご注意ください。

ValueNumberDescriptionKeyword
False0プレビューモードを無効にします。_
True1プレビューモードを有効にします。_PREVIEW_MODE

アンチエイリアスを有効にする

簡易的なアンチエイリアスを有効にします。

ValueNumberDescriptionKeyword
False0アンチエイリアスを無効にします。_
True1アンチエイリアスを有効にします。_ANTI_ALIASING

Fallback Texture*

このシェーダーが使用できなかった場合、フォールバックシェーダーへ自動的に切り替わります。
その際に自動的に使用されるテクスチャの設定ができます。
Noneの場合でも白色の半透明のテクスチャが割り当てられます。

その他のレンダリング設定

PropertyDescriptionRawProperty
Z Clip*深度クリップモードを設定します。_ZClip
Z Test*深度テストの条件を設定します。_ZTest
Color Mask*カラーチャンネルの書き込みをマスクする色要素を選択します。_ColorMask
Offset Factor*
Offset Units*
深度バイアスを調整します。_OffsetFactor
_OffsetUnits
Alpha to Mask*Alpha to coverageを有効にします。レンダリングモードCutoutの場合は強制的にOnになります。_AlphaToMask

ステレオ合成モード

ステレオレンダリング時に左右のカメラの位置や向きの中間を取って描写することができます。
通常はNone、もしくはRotationにしてください。

ValueNumberDescription            Keyword
None0何も平均化しません。_STEREOMERGEMODE_NONE
Position1座標を中間にします。左右で同じ位置に描写されるため、奥行きが分からなくなるような錯覚を受けます。_STEREOMERGEMODE_POSITION
Rotation2向きを中間にします。Pimaxといった、左右のカメラで異なる向きを持つ特殊な描写環境に対して調整する目的で使用されます。_STEREOMERGEMODE_ROTATION
Position_Rotation3座標と向きを中間にします。_STEREOMERGEMODE_POSITION_ROTATION
PropertyDescriptionRawProperty
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ライトベイク時に、裏面のメッシュも考慮されるようになります。

Released under the MIT License.