| State variable | Type | Description |
|---|---|---|
| parametric_uv | float2 | The parametric uv coordinate for the surface. |
| tangent_space | float3x3 | The array of tangent space matrices for each texture space. These matrices are available as a convenience and are constructed from the texture_tangent_u, texture_tangent_v, and surface normal as the x, y, and z axis of the coordinate system, respectively. |
| texture_coordinate | float4 | The array of texture spaces. |
| texture_du | float3 | The array of surface derivatives with respect to the u direction of the specified texture space. This array contains derivatives for each texture space. It is similar to texture_tangent_u except that the vectors in texture_du are not normalized or necessarily orthogonal to texture_dv or normal. |
| texture_dv | float3 | The array of surface derivatives with respect to the v direction of the specified texture space. This array contains derivatives for each texture space. It is similar to texture_tangent_v except that the vectors in texture_dv are not normalized or necessarily orthogonal to texture_du or normal. |
| texture_tangent_u | float3 | The array of tangent vectors for each texture space. The tangent
vector is a unit length vector in the plane defined by the surface
normal, which points in the direction of the projection of the
tangent to the positive u axis of the corresponding texture space
onto the plane defined by the original surface normal. Note that
tangent vectors are not dependent on the surface normal; they are
not automatically updated if the surface normal changes. Note: This state variable is also available under the name texture_tangent, as it was named in MetaSL 1.0. |
| texture_tangent_v | float3 | The array of bitangent vectors for each texture space. The bitangent
vector is a unit length vector in the plane defined by the surface
normal, which points in the general direction of the positive v axis of the corresponding texture space, but is orthogonal to
both the original surface normal and the tangent of the corresponding texture
space. Note that tangent vectors are not dependent on the surface
normal; they are not automatically updated if the surface normal changes. Note: This state variable is also available under the name texture_binormal, as it was named in MetaSL 1.0. |