MetaSL Shader Descriptions

Normals Shaders

Normals_normalmap
A convenience Phenomenon that bundles the lookup into the Normal Map and the conversion to the bump mapped space
Normals_bumpmap
Modifies the state normal from a normal map. The input parameters include the normal map texture, the amount to scale the tangent space normal, the texture coordinates to use when sampling the input texture, and texture (u,v).
Normals_make_normal
Transforms a normal from tangent space to internal space. The input is a color which is interpreted as a normal by first expanding the range of each of the color components from [0, 1] to [-1, 1] and then matching the r, g, and b components to the x, y, and z of the normal vector, respectively. Typically, the color input is driven by a texture node which samples a normal map.
Normals_parallax
A complete shader which includes lighting. It modifies the current shading point and its normal based both on a normal map and on a height map to achieve the illusion of complex surface detail without requiring that the detail be modeled on the surface. A Phong model is used in conjunction with the normal map and a parallax model is used on the height map.
Normals_perturb_normal
Modifies the surface normal to simulate a bumpy surface. There are three color inputs, "Center Color", "U Color" and "V Color". The slope of the "bumps" in the u-direction is computed as the u color minus the center color. The slope of the "bumps" in the v-direction is computed as the v color minus the center color. These slopes, in combination with an input called "Amount", determine the amount of perturbation in the u- and v-directions. This is one component necessary to implement bump mapping, which modifies the normals of a surface based on a height map texture.