Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.
CloseUnityはたくさんの定義済みの値をシェーダで用意しています。例えば,現在のオブジェクトの変換行列,時間,等。
他のプロパティと同じようにShaderLabで使用するのみで,唯一の違いはどこかで宣言する必要がなく,すでに“定義済み”です。
Programmable Shaders で使用する場合は UnityCG.cginc file をインクルードする必要があります。.
Name | Type | Value |
UNITY_MATRIX_MVP | float4x4 | 現在のモデル*ビュー*射影行列(model*view*projection) |
UNITY_MATRIX_MV | float4x4 | 現在のモデル * ビュー行列。 |
UNITY_MATRIX_V | float4x4 | 現在のビュー行列。 |
UNITY_MATRIX_P | float4x4 | 現在の投影行列 |
UNITY_MATRIX_VP | float4x4 | 現在のビュー行列*射影行列 |
UNITY_MATRIX_T_MV | float4x4 | モデル * ビュー行列の転置行列 |
UNITY_MATRIX_IT_MV | float4x4 | モデル * ビュー行列の逆行列の転置行列 |
UNITY_MATRIX_TEXTURE0 - UNITY_MATRIX_TEXTURE3 | float4x4 | テクスチャ変換行列 |
_Object2World | float4x4 | 現在のモデルマトリックス |
_World2Object | float4x4 | 現在のワールド行列の逆 |
_WorldSpaceCameraPos | float3 | カメラのワールド空間位置 |
unity_Scale | float4 |
xyz コンポーネントを使用せず,w が均一に拡大・縮小するスケールを保持しています |
シンプルなShadelabでは,次のプロパティにアクセスするには末尾に0を付与,すなわちライトのModel×LightColorは_ModelLightColor0
となります。Cgシェーダでは,ひとつの要素をもった配列としてアクセスできるため,Cgでの相当する表現は_ModelLightColor[0]
です。
Name | Type | Value |
_ModelLightColor | float4 | マテリアルのModel×Light color。 |
_SpecularLightColor | float4 | マテリアルのSpecular×Light color。 |
_ObjectSpaceLightPos | float4 | オブジェクト座標系でのライトの位置。_w_コンポーネントが 0 の場合は指向性ライト,1 の場合はその他のライト。 |
_Light2World | float4x4 | ライトからワールド座標系の行列。 |
_World2Light | float4x4 | ワールドからライト座標系の行列。 |
_Object2Light | float4x4 | オブジェクトからライト座標系の行列。 |
Name | Type | Value |
_Time | float4 | 時間 (t/20,t,t×2,t×3),シェーダの中でアニメーションするのに使用。 |
_SinTime | float4 | 時間の正弦: (t/8, t/4, t/2, t). |
_CosTime | float4 | 時間の余弦: (t/8, t/4, t/2, t). |
unity_DeltaTime | float4 | デルタ時間: (dt,1/dt,smoothDt,1/smoothDt) |
_ProjectionParams | float4 |
x は 1.0 または –1.0,反転した射影行列で現在レンダリングしている場合は負の値。 y はカメラに近い平面,z はカメラの遠い平面,w は 1/FarPlaneです |
_ScreenParams | float4 |
x はピクセルの現在のレンダーターゲット幅。y はピクセルの現在のレンダーターゲット高さ,z は 1.0 + 1.0/width,w は 1.0 + 1.0/height |