Go to: Related nodes. Attributes.

Use a Lambert shader to produce a surface that appears flat, with no reflections or highlights on it. Lambert shaders are good for modeling things like chalk, matte paint, and other unpolished surfaces.

Several other shaders are based on the Lambert shader, and share all of these attributes. You can use them to produce different effects:

In the table below, important attributes have their names indicated in bold in the description column.

This node is MP safe

Node nameParentsClassificationMFn typeCompatible function sets
lambertshadingDependNodeshader/surface:drawdb/shader/surface/lambertkLambertkBase
kNamedObject
kDependencyNode
kLambert

Related nodes

reflect, phongE, phong, blinn, anisotropic, volumeShader, simpleVolumeShader, surfaceShader, displacementShader, layeredShader, useBackground, defaultShaderList, shadingMap

Attributes (99)

The following quick index only shows top-level attributes (too many attributes to show them all): ambientColor (3), chromaticAberration, color (3), diffuse, glowIntensity, hardwareShader (3), hideSource, incandescence (3), lightAbsorbance, lightDataArray (14), materialAlphaGain, matteOpacity, matteOpacityMode, mediumRefractiveIndex, normalCamera (3), objectId, opacityDepth, outColor (3), outGlowColor (3), outMatteOpacity (3), outTransparency (3), pointCamera (3), primitiveId, rayDepth, rayDirection (3), rayInstance, raySampler, refractionLimit, refractions, refractiveIndex, shadowAttenuation, surfaceThickness, translucence, translucenceDepth, translucenceFocus, transparency (3), transparencyDepth, vrEdgeColor (3), vrEdgePriority, vrEdgeStyle, vrEdgeWeight, vrFillObject, vrHiddenEdges, vrHiddenEdgesOnTransparent, vrOutlinesAtIntersections, vrOverwriteDefaults

Long name (short name)TypeDefaultFlags
objectId (oi) addr0inputconnectablehidden
Unique integer that identifies the object being rendered.
primitiveId (pi) integer0inputconnectablehidden
triangle id
raySampler (rtr) addr0inputconnectablehidden
ray sample pointer
rayDepth (rd) short0inputconnectablehidden
current ray depth
rayInstance (ryi) integer0inputconnectablehidden
Unique ray identifier controlling the sampling distribution for volume light depth map shadows, fluid volume rendering, light fog, ray traced shadows, and motion blur.
refractionLimit (rdl) short6outputinputconnectablestorable
ray depth limit
refractiveIndex (rfi) float1.0outputinputconnectablestorable
Refractive Index determines how much a ray of light will bend when it passes through an object. This attribute only works if your material is partially or completely transparent (see the Transparency attribute), refractions are turned on (see the Refractions attribute) and you are rendering using Ray Tracing. (See Render Settings)

If the Refractive Index is set to 1.0, then light does not bend when it passes through the object. Here are some other useful values for Refractive Index:

    Air: 1.0
    Water: 1.33
    Gasoline: 1.45
    Crystal: 2.00
    Glass: 1.5
    Ice: 1.309
    Quartz: 1.6
    Ruby: 1.77
    Sapphire: 1.77
    Salt: 1.54
    Alcohol: 1.329
    Emerald: 1.57
    Polystyrene: 1.55

Note:If you make an object transparent, objects that are seen through it will be refracted only if their Visible In Refractions attribute is turned on.

mediumRefractiveIndex (mrfi) float1.0inputconnectablehidden
the previous refractive index
refractions (rfc) boolfalseoutputinputconnectablestorable
Turn on Refractions to make your material refract light when you are rendering with Ray Tracing. You will not see a difference unless Refractive Index is set to a value other than 1.0. (See the Refractive Index attribute above for more details.) Refractions are turned off by default.
diffuse (dc) float0.8outputinputconnectablestorablekeyable
Diffuse controls how much of the light in the scene is reflected from the object. Most materials absorb some of the light falling on them, and scatter the rest. The default value is 0.8; a value of 1.0 (the maximum) would mean that all the light falling on the material is reflected; a value of 0.0 (the minimum) would mean that no light is reflected (the material would appear black, although it could still have highlights.)
rayDirection (rad) float3inputconnectable
The ray direction.
rayDirectionX (rdx) float0.0inputconnectable
The x component of the direction.
rayDirectionY (rdy) float0.0inputconnectable
The y component of the direction.
rayDirectionZ (rdz) float1.0inputconnectable
The z component of the direction.
color (c) float3outputinputconnectablestorable
Color is the basic color of the surface.
colorR (cr) float0.5outputinputconnectablestorablekeyable
color red value
colorG (cg) float0.5outputinputconnectablestorablekeyable
color green value
colorB (cb) float0.5outputinputconnectablestorablekeyable
color blue value
transparency (it) float3outputinputconnectablestorable
Transparency controls how transparent or opaque the material is. Black means completely opaque (the default), and white means completely transparent. You can set it to any level in between. You can also control transparency on a per-channel basis; for example, if you set this to red, then only the red channel will be transparent.

Note: If this material has specular highlights (i.e., if this is a Phong or Blinn shader), the transparency setting will not affect the highlights. So if you are trying to make an object disappear by animating the transparency attribute, you may also have to animate the specular highlight attributes.

transparencyR (itr) float0.0outputinputconnectablestorablekeyable
transparency red value
transparencyG (itg) float0.0outputinputconnectablestorablekeyable
transparency green value
transparencyB (itb) float0.0outputinputconnectablestorablekeyable
transparency blue value
ambientColor (ambc) float3outputinputconnectablestorable
Ambient Color is black by default, which means it does not affect the material's over-all color. As the ambient color becomes brighter, it affects the material's color by lightening it and blending the two colors.

If there are ambient lights in the scene, then the color and brightness of those lights is used to control how much the ambient color contributes to the final color of the material.

ambientColorR (acr) float0.0outputinputconnectablestorablekeyable
ambient color red value
ambientColorG (acg) float0.0outputinputconnectablestorablekeyable
ambient color green value
ambientColorB (acb) float0.0outputinputconnectablestorablekeyable
ambient color blue value
incandescence (ic) float3outputinputconnectablestorable
Incandescence makes a material appear opalescent, as if it were emmitting light itself, such as lava or a phosphorescent moss. A slight touch of incandescence on vegetable matter, for example, can make the vegetation look alive.

By default, the color is black, which has no effect on the surface.

Note: although incandescence makes a surface appear to glow, it does not actually act as a source of light in the scene.

See also Glow Intensity.

incandescenceR (ir) float0.0outputinputconnectablestorablekeyable
incandescence red value
incandescenceG (ig) float0.0outputinputconnectablestorablekeyable
incandescence green value
incandescenceB (ib) float0.0outputinputconnectablestorablekeyable
incandescence blue value
translucence (tc) float0.0outputinputconnectablestorablekeyable
Translucence simulates the way light diffusely penetrates through translucent objects. This means that when light shines on one side of the object, the other side is partially illuminated. This can be used for effects such as clouds, fur, hair, marble, jade, wax, paper, leaves, etc.

If this is set to 0 (the default) then no light shows through the object. If this is set to 1, all the light shows through.

translucenceFocus (tcf) float0.5outputinputconnectablestorablekeyable
TranslucenceFocus simulates the way light scatters more in a forward direction through translucent objects. Thin objects like a leaf, or low density objects like a cloud tend to scatter more in a forward direction. When the focus is 0.0 translucent light is scattered in all directions. As the focus value is raised the translucent light is scatter more in the light direction. This makes the backlit side of a leaf glow more than the frontlit side. At high focus values one will see a halo or glow around the lightsource when seen through a translucent object.
translucenceDepth (trsd) float0.5outputinputconnectablestorablekeyable
Translucence Depth

The depth of penetration into an object at which translucence decays to nothing. When the parameter is 0, translucence does not decay with respect to the distance light travels through the object.

opacityDepth (opad) float0.0outputinputconnectablestorablekeyablehidden
Opacity Depth (Studio special effect)

Causes the transparency of an object to diminish with its thickness. An object is opaque if its thickness is greater than its Opacity Depth. When the Opacity Depth value is 0, it has no effect (as opposed to making an object entirely opaque). The shader must have some Transparency to show the effect of Opacity Depth. When Opacity Depth is non-zero, transparency controls specularity, reflectivity, and incandescence, which are normally independent of transparency. This makes it easier to create soft, fuzzy objects. Also, if you use a transparency map to create holes in a surface that has specular highlights, set Opacity Depth to a high value instead of creating a matching specular map. Transparent objects cast shadows in the raycaster even if the Opacity Depth value is non-zero.

Tip: Use Opacity Depth to simulate hair, fur, and clouds.

glowIntensity (gi) float0.0outputinputconnectablestorablekeyable
Glow Intensity is 0 by default, meaning that no glow is added to the material. As this is turned up, the material seems to 'glow' with a faint halo of light around it.

Note that this is different from the Incandescence attribute in a few important ways. First, glow is added as a post-process at the end of rendering. (Incandescence just makes the surface appear brighter.) Second, glow adds a halo, which incandescence does not.

vrOverwriteDefaults (vrod) bool0outputinputconnectablestorable
Allows user to over-ride render globals and customize settings per material.
vrFillObject (vrfo) enum0outputinputconnectablestorable
The style of shading used to fill surfaces in the rendered image.
vrEdgeWeight (vrew) double0.0outputinputconnectablestorable
Surface edges and silhouettes are rendered as outlines. Controls the thickness of surface outlines (measured in points).
vrEdgeColor (vrec) float3outputinputconnectablestorable
Surface edges and silhouettes are rendered as outlines. This controls the color of surface outlines.
vrEdgeColorR (vecr) float0.5outputinputconnectablestorable
Red component.
vrEdgeColorG (vecg) float0.5outputinputconnectablestorable
Green component.
vrEdgeColorB (vecb) float0.5outputinputconnectablestorable
Blue component.
vrEdgeStyle (vres) enum0outputinputconnectablestorable
Surface edges and silhouettes are rendered as outlines. This controls the level of detail (i.e. number of outlines).
vrEdgePriority (vrep) integer0outputinputconnectablestorable
A depth algorithm is used to determine which line style to use when two line styles collide. If the line style cannot be resolved with the depth algorithm the edge priority attribute is used to determine which line style to use.
vrHiddenEdges (vrhe) bool0outputinputconnectablestorable
Surface edges and silhouettes are rendered as outlines. This controls whether the outline behind a surface will be displayed.
vrHiddenEdgesOnTransparent (vrht) bool0outputinputconnectablestorable
The attribute controls the rendering of hidden edges on transparent objects. Hidden edges on transparent objects are treated differently from ordinary hidden edges. Their edge color is masked by the transparency and their lines can be occluded by opaque objects.
vrOutlinesAtIntersections (vroi) bool1outputinputconnectablestorable
Specifies if edges should be drawn when two polygons intersect. By default this flag is enabled.
materialAlphaGain (maga) float1.0outputinputconnectablestorablekeyable
Material Alpha
hideSource (hs) boolfalseoutputinputconnectablestorable
If Hide Source is turned on (and Glow Intensity is not zero), then the glowing object will be hidden, but its glowing halo will still be rendered in the scene (during post-processing). Use this attribute to produce gas effects, or interesting ghosts.
surfaceThickness (thik) float0.0outputinputconnectablestorablekeyable
Surface Thickness

(aka Studio special effect "Surface Width" - raytracing only)

The simulated thickness (in world space units) of transparent objects that are made from single surfaces (for example, a plane or face). Using Surface Width does not produce the same results as building a surface with actual thickness. However, the effect works well when the edges of the surface are not visible (for example, closed surfaces, or bounded shapes like a car windshield).

shadowAttenuation (fakc) float0.5outputinputconnectablestorablekeyable
Shadow Attenuation (Fake Refraction Caustics)>p> (aka Studio special effect "Transparency Shade" - raytracing only)

Causes shadows of transparent objects to be brighter in the center, simulating the focusing of light. 0 gives constant intensity shadows, 1 gives shadows focused in the center.

transparencyDepth (trdp) float0.0outputinputconnectablestorablehidden
Transparency Depth (Studio special effect - raytracing only)

This should be used for backwards compatability when rendering data from Studio - Maya users should use Absorbance instead.

The distance (in world units) camera rays can travel after passing through a transparent surface. Useful for effects like under water. If the Transp. Depth value is 0, camera rays can travel an infinite distance, and all objects behind the transparent surface are visible no matter how far away they are. For non-zero values, as a camera ray reaches the distance of the Transp. Depth value, its color becomes the surface color. Only objects near the transparent surface (less than the Transp. Depth value) are visible through the surface. Objects close to the surface are more visible (the surface is more transparent in those areas) and objects further away are less visible (the surface is less transparent in those areas). Objects beyond this depth are not visible at all (the surface is opaque in those areas).

lightAbsorbance (absb) float0.0outputinputconnectablestorablekeyable
Light Absorbance Transparent materials generally absorb some amount of the light which passes through them (Beer's Law). The more of the material the light shines through, the less of the light gets through. This attribute describes how light absorbing the material is (raytracing only). A material with an absorbance of 0.0 will transmitt completely. The higher the absorbance, the less light will pass through.
chromaticAberration (crab) boolfalseoutputinputconnectablestorable
Chromatic Aberration Causes different wavelengths of light to refract at different angles when passing through a transparent surface during raytracing. Chromatic aberration only affects light rays as they pass through the second surface of a transparent object (that is, the first exit ray). For best results, make sure there are suitable objects in the background to be refracted.
outColor (oc) float3outputconnectable
Out Color is the final output color generated by this node. If you are using this node as one of the layers in a Layered Shader, then you will need to connect this attribute to the Color input of the Layered Shader.
outColorR (ocr) float0.0outputconnectable
out color red value
outColorG (ocg) float0.0outputconnectable
out color green value
outColorB (ocb) float0.0outputconnectable
out color blue value
outTransparency (ot) float3outputconnectable
Out Transparency is the final output transparency generated by this node. If you are using this node as one of the layers in a Layered Shader, then you will need to connect this attribute to the Transparency input of the Layered Shader.
outTransparencyR (otr) float0.0outputconnectable
out transparency red value
outTransparencyG (otg) float0.0outputconnectable
out transparency green value
outTransparencyB (otb) float0.0outputconnectable
out transparency blue value
outGlowColor (ogc) float3outputconnectable
Out Glow Color is the final output glow color from this node (if this node is glowing)
outGlowColorR (ogr) float0.0outputconnectable
out glow color red value
outGlowColorG (ogg) float0.0outputconnectable
out glow color green value
outGlowColorB (ogb) float0.0outputconnectable
out glow color blue value
pointCamera (pc) float3outputinputconnectable
surface intersection point in camera space
pointCameraX (px) float1.0outputinputconnectable
point camera x component
pointCameraY (py) float1.0outputinputconnectable
point camera y component
pointCameraZ (pz) float1.0outputinputconnectable
point camera z component
normalCamera (n) float3outputinputconnectable
Normal Camera represents the surface normals in the camera's space. (These are used to calculate shading.)

To do Bump Mapping, connect the output of a bump node to this attribute.

normalCameraX (nx) float1.0outputinputconnectable
normal camera x value
normalCameraY (ny) float1.0outputinputconnectable
normal camera Y value
normalCameraZ (nz) float1.0outputinputconnectable
normal camera Z value
lightDataArray (ltd) lightDataNULLarrayinputconnectablehidden
The lighting information this node computes.
lightDirection (ld) float3inputconnectablehidden
The light direction.
lightDirectionX (ldx) float1.0inputconnectablekeyablehidden
The x component of the direction.
lightDirectionY (ldy) float1.0inputconnectablekeyablehidden
The y component of the direction.
lightDirectionZ (ldz) float1.0inputconnectablekeyablehidden
The z component of the direction.
lightIntensity (li) float3inputconnectablehidden
The light intensity (it's a colour).
lightIntensityR (lir) float1.0inputconnectablekeyablehidden
light intensity red value
lightIntensityG (lig) float1.0inputconnectablekeyablehidden
light intensity green value
lightIntensityB (lib) float1.0inputconnectablekeyablehidden
light intensity blue value
lightAmbient (la) booltrueinputconnectablekeyablehidden
The boolean that indicates if the light has an ambient component.
lightDiffuse (ldf) booltrueinputconnectablekeyablehidden
The boolean that indicates if the light has a diffuse component.
lightSpecular (ls) boolfalseinputconnectablekeyablehidden
The boolean that indicates if the light has a specular component.
lightShadowFraction (lsf) float0.0inputconnectablehidden
The visibility fraction to the light. value is in [0,1]
preShadowIntensity (psi) float0.0inputconnectablehidden
The light intensity without taking shadow into account.
lightBlindData (lbd) addr0inputconnectablehidden
The light's blind data.
matteOpacityMode (mom) enum2outputinputconnectablestorable
Matte Opacity Mode controls how the system will use the Matte Opacity attribute (below). When you are rendering with a matte (i.e. an alpha channel, or mask), these two attributes are used to control how this material will show up in the matte. This is useful if you will be compositing your rendered images later on.

There are three settings, used for different purposes:

    Opacity Gain: (the default). Matte values are calculated in the normal way (based on the transparency of the object) then multiplied by the Matte Opacity. (Matte Opacity has a default value of one, by default these attributes have no effect.) With Opacity Gain, you can animate the Matte Opacity value to change the overall transparency of the object when it is later composited.

    Solid Matte: This is like Opacity Gain, except that the normally-calculated matte values are ignored in favor of the Matte Opacity setting. The entire matte for the object is set to the value of the Matte Opacity attribute. If there are transparent areas on the object, their transparency is ignored in the matte. Use this setting to composite an object with transparent parts, when you don't want the background to show through them.

    Black Hole: The value of Matte Opacity is ignored, and all the matte for this material is set to be transparent. Use this when you are creating substitute geometry in a scene, which is standing in for objects in a background image that you will be compositing with later. Your stand-in objects will 'punch a hole' in the matte. This allows other computer-generated geometry to pass behind your stand-in objects. Later, when foreground and background are composited, the results will be correct, with the background object showing through the 'black hole' areas.

matteOpacity (mog) float1.0outputinputconnectablestorablekeyable
Matte Opacity is used (along with Matte Opactiy Mode) to affect how the matte (i.e. alpha channel or mask) for this material will be calculated. See Matte Opacity Mode above for full details.
outMatteOpacity (omo) float3outputconnectable
output Matte Opacity
outMatteOpacityR (omor) float0.0outputconnectable
output Matte Opacity red value
outMatteOpacityG (omog) float0.0outputconnectable
output Matte Opacity green value
outMatteOpacityB (omob) float0.0outputconnectable
output Matte Opacity blue value
hardwareShader (hws) float3outputinputconnectable
Attribute to be connected to a hardware shader in order to override drawing in the 3d view.
hardwareShaderR (hwr) float0.0outputinputconnectable
Red component.
hardwareShaderG (hwg) float0.0outputinputconnectable
Green component.
hardwareShaderB (hwb) float0.0outputinputconnectable
Blue component.