czm_inverseNormal3D
An automatic GLSL uniform representing a 3x3 normal transformation matrix that
transforms normal vectors in eye coordinates to 3D model coordinates. This is
the opposite of the transform provided by czm_normal.
In 3D mode, this is identical to
czm_inverseNormal, but in 2D and Columbus View it represents the inverse normal transformation
matrix as if the camera were at an equivalent location in 3D mode. This is useful for lighting
2D and Columbus View in the same way that 3D is lit.
Like all automatic uniforms, czm_inverseNormal3D
does not need to be explicitly declared.
However, it can be explicitly declared when a shader is also used by other applications such
as a third-party authoring tool.
Example
// GLSL declaration uniform mat3 czm_inverseNormal3D; // Example vec3 normalMC = czm_inverseNormal3D * normalEC;