MetaSL specification 1.2.2
14 March 2011

MetaSL state variables for texture attributes


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.


© 2011 NVIDIA ARC GmbH. All rights reserved.