Go to: Related nodes. Attributes.

OpenPBR Surface is a specification of a surface shading model intended as a standard for computer graphics. It aims to provide a material representation capable of accurately modeling the vast majority of CG materials used in practical visual effects and feature animation productions.

OpenPBR Surface is an open standard hosted by the Academy Software Foundation (ASWF), and is organized as a subproject of MaterialX.

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

Node nameParentsClassificationMFn typeCompatible function sets
openPBRSurfacepaintableShadingDependNodeshader/surface:drawdb/shader/surface/openPBRSurfacekOpenPBRSurfacekBase
kNamedObject
kDependencyNode
kOpenPBRSurface

Related nodes

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

Attributes (124)

Attribute quick index omitted (too many attributes to show them all).

Long name (short name)TypeDefaultFlags
baseColor (bc) float3outputinputconnectablestorable
Color of the reflection from the diffuse and metallic base.
baseColorR (bcr) float0.8outputinputconnectablestorablekeyable
Base color red value.
baseColorG (bcg) float0.8outputinputconnectablestorablekeyable
Base color green value.
baseColorB (bcb) float0.8outputinputconnectablestorablekeyable
Base color blue value.
baseDiffuseRoughness (dr) float0outputinputconnectablestorablekeyable
Roughness of the diffuse reflection. Higher values cause the surface to appear flatter.
baseMetalness (m) float0outputinputconnectablestorablekeyable
Specifies how metallic the base material appears (dials the base from pure dielectric to pure metal).
baseWeight (b) float1.0outputinputconnectablestorablekeyable
Multiplier on the intensity of the reflection from the diffuse and metallic base.
coatColor (ctc) float3outputinputconnectablestorable
The color of the clear-coat layer's transparency, due to absorption in the coat.
coatColorR (ctcr) float1outputinputconnectablestorablekeyable
Coat color red value.
coatColorG (ctcg) float1outputinputconnectablestorablekeyable
Coat color green value.
coatColorB (ctcb) float1outputinputconnectablestorablekeyable
Coat color blue value.
coatDarkening (ctdk) float1outputinputconnectablestorablekeyable
Modulates the physical coat darkening effect.
coatIOR (ctior) float1.6outputinputconnectablestorablekeyable
The index of refraction of the clear-coat layer.
coatRoughness (ctr) float0outputinputconnectablestorablekeyable
The roughness of the clear-coat reflections. The lower the value, the sharper the reflection.
coatRoughnessAnisotropy (cta) float0outputinputconnectablestorablekeyable
The directional bias of the roughness of the clear-coat layer, resulting in increasingly stretched highlights along the coat tangent direction.
coatWeight (ct) float0outputinputconnectablestorablekeyable
The presence weight of a reflective clear-coat layer on top of the material. Use for materials such as car paint or an oily layer.
emissionColor (ec) float3outputinputconnectablestorable
The color of the emitted light.
emissionColorR (ecr) float1outputinputconnectablestorablekeyable
Emission color red value.
emissionColorG (ecg) float1outputinputconnectablestorablekeyable
Emission color green value.
emissionColorB (ecb) float1outputinputconnectablestorablekeyable
Emission color blue value.
emissionLuminance (elu) float0outputinputconnectablestorablekeyable
The amount of emitted light, as a luminance in nits.
fuzzColor (fzc) float3outputinputconnectablestorable
The color of the fuzz layer.
fuzzColorR (fzcr) float1outputinputconnectablestorablekeyable
Fuzz color red value.
fuzzColorG (fzcg) float1outputinputconnectablestorablekeyable
Fuzz color green value.
fuzzColorB (fzcb) float1outputinputconnectablestorablekeyable
Fuzz color blue value.
fuzzRoughness (fzr) float0.5outputinputconnectablestorablekeyable
The roughness of the fuzz layer.
fuzzWeight (fw) float0outputinputconnectablestorablekeyable
The presence weight of a fuzz layer that can be used to approximate microfibers, for fabrics such as velvet and satin as well as dust grains.
geometryCoatNormal (gctn) float3outputinputconnectable
Input normal for coat layer. Not editable, but connectable for bump mapping.
geometryCoatNormalX (gctnx) float0outputinputconnectable
Geometry coat normal X value.
geometryCoatNormalY (gctny) float0outputinputconnectable
Geometry coat normal Y value.
geometryCoatNormalZ (gctnz) float0outputinputconnectable
Geometry coat normal Z value.
geometryCoatTangent (gctt) float3outputinputconnectable
Input tangent for coat layer. Not editable, but connectable for bump mapping.
geometryCoatTangentX (gcttx) float0outputinputconnectable
Geometry coat tangent X value.
geometryCoatTangentY (gctty) float0outputinputconnectable
Geometry coat tangent Y value.
geometryCoatTangentZ (gcttz) float0outputinputconnectable
Geometry coat tangent Z value.
geometryOpacity (geop) float1outputinputconnectablestorablekeyable
The opacity of the entire material.
geometryThinWalled (getw) boolfalseoutputinputconnectablestorable
If true the surface is double-sided and represents an infinitesimally thin shell. Suitable for extremely geometrically thin objects such as leaves or paper.
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.
lightDataArray (ltd) lightDatanullptrarrayinputconnectablehidden
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.
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
objectId (oi) addr0inputconnectablehidden
Unique integer that identifies the object being rendered.
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
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
primitiveId (pi) integer0inputconnectablehidden
triangle id
rayDepth (rd) short0inputconnectablehidden
current ray depth
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.
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.
raySampler (rtr) addr0inputconnectablehidden
ray sample pointer
specularColor (sc) float3outputinputconnectablestorable
Color of the specular reflection (controls the physical edge-tint for metals, and a non-physical overall tint for dielectrics).
specularColorR (scr) float1outputinputconnectablestorablekeyable
Specular color red value.
specularColorG (scg) float1outputinputconnectablestorablekeyable
Specular color green value.
specularColorB (spb) float1outputinputconnectablestorablekeyable
Specular color blue value.
specularIOR (sior) float1.5outputinputconnectablestorablekeyable
Index of refraction of the dielectric base.
specularRoughness (sr) float0.3outputinputconnectablestorablekeyable
The roughness of the specular reflection. Lower numbers produce sharper reflections, higher numbers produce blurrier reflections.
specularRoughnessAnisotropy (sa) float0outputinputconnectablestorablekeyable
The directional bias of the roughness of the metal/dielectric base, resulting in increasingly stretched highlights along the tangent direction.
specularWeight (s) float1.0outputinputconnectablestorablekeyable
Multiplies the specular reflectivity.
subsurfaceColor (subc) float3outputinputconnectablestorable
The observed reflection color of the subsurface scattering medium.
subsurfaceColorR (subcr) float0.8outputinputconnectablestorablekeyable
Subsurface color red value.
subsurfaceColorG (subcg) float0.8outputinputconnectablestorablekeyable
Subsurface color green value.
subsurfaceColorB (subcb) float0.8outputinputconnectablestorablekeyable
Subsurface color blue value.
subsurfaceRadius (subs) float1outputinputconnectablestorablekeyable
Length scale of the subsurface scattering mean free path.
subsurfaceRadiusScale (subr) float3outputinputconnectablestorable
RGB multiplier to subsurface_radius, giving the per-channel scattering mean-free-paths.
subsurfaceRadiusScaleR (subrr) float1outputinputconnectablestorablekeyable
Subsurface radius scale red value.
subsurfaceRadiusScaleG (subrg) float0.5outputinputconnectablestorablekeyable
Subsurface radius scale green value.
subsurfaceRadiusScaleB (subrb) float0.25outputinputconnectablestorablekeyable
Subsurface radius scale blue value.
subsurfaceScatterAnisotropy (suba) float0outputinputconnectablestorablekeyable
Controls the phase-function of subsurface scattering, where zero scatters light evenly, positive values scatter forwards, and negative values scatter backwards.
subsurfaceWeight (sub) float0outputinputconnectablestorablekeyable
Mixture weight which dials the opaque dielectric base between diffuse reflection and subsurface scattering. A value of 1.0 indicates full subsurface scattering and a value 0 for diffuse reflection only.
tangentUCamera (utan) float3outputinputconnectable
u-tangent at sample point
tangentUCameraX (utnx) float1.0outputinputconnectable
Tangent X value.
tangentUCameraY (utny) float1.0outputinputconnectable
Tangent Y value.
tangentUCameraZ (utnz) float1.0outputinputconnectable
Tangent Z value.
thinFilmIOR (tfior) float1.4outputinputconnectablestorablekeyable
The index of refraction of the thin-film.
thinFilmThickness (tft) float0.5outputinputconnectablestorablekeyable
The thickness of the thin-film layer on the base (in micrometers).
thinFilmWeight (tfw) float0outputinputconnectablestorablekeyable
Coverage weight of the thin-film. Use for materials such as multi-tone car paint or soap bubbles.
transmissionColor (trc) float3outputinputconnectablestorable
Controls color of the transparent base due to Beer's law volumetric absorption under the surface (reverts to a non-physical tint when transmission_depth is zero).
transmissionColorR (trcr) float1outputinputconnectablestorablekeyable
Transmission color red value.
transmissionColorG (trcg) float1outputinputconnectablestorablekeyable
Transmission color green value.
transmissionColorB (trcb) float1outputinputconnectablestorablekeyable
Transmission color blue value.
transmissionDepth (td) float0outputinputconnectablestorablekeyable
Specifies the distance light travels inside the transparent base before it becomes exactly the transmission_color according to Beer's law.
transmissionDispersionAbbeNumber (tdan) float20outputinputconnectablestorablekeyable
Physical Abbe number of the dielectric medium, describing how much the dielectric index of refraction varies across wavelengths.
transmissionDispersionScale (tdi) float0outputinputconnectablestorablekeyable
Linearly scales the amount of dispersion.
transmissionScatter (ts) float3outputinputconnectablestorable
Controls the color of light volumetrically scattered inside the transparent base. Suitable for materials with visually significant scattering such as honey, fruit juice, murky water, opalescent glass, or milky glass.
transmissionScatterR (tsr) float0outputinputconnectablestorablekeyable
Transmission scatter red value.
transmissionScatterG (tsg) float0outputinputconnectablestorablekeyable
Transmission scatter green value.
transmissionScatterB (tsb) float0outputinputconnectablestorablekeyable
Transmission scatter blue value.
transmissionScatterAnisotropy (tsa) float0outputinputconnectablestorablekeyable
The amount of directional bias, or anisotropy, of the volumetric scattering in the transparent base.
transmissionWeight (t) float0outputinputconnectablestorablekeyable
Mixture weight between the transparent and opaque dielectric base. The greater the value the more transparent the material.
triangleNormalCamera (tnc) float3outputinputconnectablehidden
Triangle Normal In Camera Space This is the normal of the visible triangle in the camera space.

This normal is used to check the reflection direction is not in the opposite direction of the normal of the visible triangle.

triangleNormalCameraX (tnx) float0.0outputinputconnectable
Triangle normal X value.
triangleNormalCameraY (tny) float1.0outputinputconnectable
Triangle normal Y value.
triangleNormalCameraZ (tnz) float0.0outputinputconnectable
Triangle normal Z value.