BasicSurface
This node creates a basic material that you can bind to a prim using the GeoBindMaterial node or the img input, if the prim has one. It combines the Diffuse, Specular, and Emission nodes, allowing you to control all three aspects of the material with a single node.
Note: To see the effect of your changes to an object’s material properties, you need to have at least one light node in your Scene. You also need to enable transparency and lighting in the Viewer settings. Press S over the 3D Viewer, and check transparency and headlamp on the 3D tab.
Tip: BasicSurface's classic 3D system equivalent is the BasicMaterial node.
Tip: Use BasicSurface’s ray visibility and indirect illumination controls with ScanlineRender2 for ray tracing.
Inputs and Controls
Connection Type |
Connection Name |
Function |
Input |
mapSh |
An optional input for varying the shininess value. Where the mask is black, the shininess is set to the specified min shininess value. Where the mask is white, the shininess is set to the specified max shininess value. Values in between (where the matte is gray) are attenuated accordingly. Note: This input is hidden on the left side of the node. |
mapS |
An optional input for limiting the effect of the specular component. Any changes you make to specular are limited to the non-black areas of the mask. |
|
mapE |
An optional input for limiting the effect of the emissive component. Any changes you make to emission are limited to the non-black areas of the mask. |
|
mapD |
An optional input for limiting the effect of the diffuse component. Any changes you make to diffuse are limited to the non-black areas of the mask. |
|
unnamed |
Connects another shader node, such as ConstantShader or FillShader. Adding several shader nodes one after the other allows you to produce more complex effects. |
Control (UI) |
Knob (Scripting) |
Default Value |
Function |
BasicSurface Tab |
|||
Visibility | sides_mode | both-sides |
Choose whether material is visible for front faces, back faces or both sides. Also toggle: Camera - material is visible to camera rays Shadow - material is visible to shadow Spec - material is visible to specular reflection rays Diff - material is visible to diffuse reflection rays Trans - material is visible to transmissed (or refracted) rays |
shading channels |
channels |
rgb |
The effect is only applied to these channels. If you set this to something other than all or none, you can use the checkboxes on the right to select individual channels. |
emission |
emission |
0 |
Sets the color of the light the material emits. Note that when you have an image connected to the unnamed input of the BasicSurface node and adjust this value, you need to look at the rendered 2D image to see the effect of your changes. Changing the emission value does not have any effect in the 3D Viewer. |
diffuse |
diffuse |
0.18 |
Sets the color of the material when illuminated. Note that when you have an image connected to the unnamed input of the BasicSurface node and adjust this value, you need to look at the rendered 2D image to see the effect of your changes. Changing the diffuse value does not have any effect in the 3D Viewer. |
specular |
specular |
0.8 |
Sets how bright the highlights on the material seem. |
min shininess |
min_shininess |
10 |
Sets the shininess value controlling the width of the highlights. The higher the value, the wider the highlights. If you have connected a mask to the mapSh input of the node, pixel values in the mask are used to vary the shininess value. Where the matte is black, the shininess is set to min shininess. Where the matte is white, the shininess is set to max shininess. Values in between (where the matte is gray) are attenuated accordingly. If you’re not using the mapSh input, the average of min shininess and the max shininess value is used as the shininess value for the material. |
max shininess |
max_shininess |
10 |
Sets the shininess value controlling the width of the highlights. The higher the value, the wider the highlights. If you have connected a mask to the mapSh input of the node, pixel values in the mask are used to vary the shininess value. Where the matte is black, the shininess is set to min shininess. Where the matte is white, the shininess is set to max shininess. Values in between (where the matte is gray) are attenuated accordingly. If you’re not using the mapSh input, the average of min shininess and the max shininess value is used as the shininess value for the material. |
shininess channel |
shininess_channel |
luminance |
Selects which channel from the mapSh input is used to map the black and white values to the min shininess and max shininess controls. Choose: • red - use the red channel for the mapping. • green - use the green channel. • blue - use the blue channel. • alpha - use the alpha channel. • luminance - use the luminance. • average rgb - use the average of the red, green, and blue channels. |
UV Primvar | uv_coord_primvar_name | st | Name of the primitive variable (primvar) that contains the UV coordinate values. |
UV Primvar W | uv_wcoord_primvar_name | stw | Name of the primitive variable (primvar) that contains the UV perspective coordinate. This is typically used only for perspective projections applied to geometry. |
Opacity Src Chan | opacity_channel | Enabled, rgba.alpha | Channel from the mapD input to use as the source for surface opacity. |
Opacity factor | opacity_factor | 1 | This is additional opacity/transparency added on top of any existing opacity (premulting) present in the surface’s color and opacity values. |
Opac Presence tHold | opacity_presence_threshold | 0.0001 | If a separate presence channel is not being used this opacity value as the threshold for what should be considered ‘solid’ or not for a surface shader sample. |
Presence Src Chan | presence_channel | disabled, none | Channel from the mapD input to use as the source for the ‘presence’ weight of this surface. This can also be thought of as the sample weight coverage |
Blend Mode | blend_mode | over |
Blend operation used when combining this surface’s color result with the next surface’s color further away in depth. This is renderer dependent - some renderers may support all, none, or only some of these blend operations. none - surface result is ignored replace - surface result replaces all color channels (no blending) over - surface result is blended over the next surface using the opacity result mask - inverse punch out using the opacity result plus - per-channel addition max - per-channel maximum min - per-channel minimum |