Arnold Standard Surface shader
The Arnold Standard Surface shader replicates the Arnold Standard Surface shader available in Autodesk® 3DsMax and Autodesk® Maya for the High Definition Render Pipeline (HDRP). When Unity imports an FBX that includes a material using Autodesk's Arnold Standard Surface shader, it applies HDRP's Arnold Standard Surface shader to the material. The material properties and texture inputs are identical between the Unity and Autodesk versions of this shader. The materials themselves also look and respond to light similarly.
Note: There are slight differences between what you see in Autodesk® Maya or Autodesk® 3DsMax and what you see in HDRP and HDRP doesn't support some material features.
Arnold Standard materials seen in Autodesk® Maya viewport.
The same materials imported from FBX seen in Unity.
Note that the HDRP implementation of this shader uses a Shader Graph.
Creating an Arnold Standard Surface material
When Unity imports an FBX with a compatible Arnold shader, it automatically creates an Arnold material. If you want to manually create an Arnold Standard Surface material:
- Create a new material (menu: Assets > Create > Material).
- In the Inspector for the Material, click the Shader drop-down then click HDRP > ArnoldStandardSurface > ArnoldStandardSurface.
Properties
Surface Options
Surface Options control the look of your Material's surface and how Unity renders the Material on screen.
Property | Description | ||
---|---|---|---|
Surface Type | Specifies whether the material supports transparency or not. Materials with a Transparent Surface Type are more resource intensive to render than Materials with an Opaque Surface Type. Depending on the option you select, HDRP exposes more properties. The options are: • Opaque: • Transparent: Simulates a translucent Material that light can penetrate, such as clear plastic or glass. For more information about the feature and for the list of properties each Surface Type exposes, see the Surface Type documentation. |
||
Rendering Pass | Specifies the rendering pass that HDRP processes this material in. • Before Refraction: Draws the GameObject before the refraction pass. This means that HDRP includes this Material when it processes refraction. To expose this option, select Transparent from the Surface Type drop-down. • Default: Draws the GameObject in the default opaque or transparent rendering pass pass, depending on the Surface Type. • Low Resolution: Draws the GameObject in half resolution after the Default pass. • After post-process: For Unlit Materials only. Draws the GameObject after all post-processing effects. |
||
Blending Mode | Specifies the method HDRP uses to blend the color of each pixel of the material with the background pixels. The options are: • Alpha: Uses the Material’s alpha value to change how transparent an object is. 0 is fully transparent. 1 appears fully opaque, but the Material is still rendered during the Transparent render pass. This is useful for visuals that you want to be fully visible but to also fade over time, like clouds. • Additive: Adds the Material’s RGB values to the background color. The alpha channel of the Material modulates the intensity. A value of 0 adds nothing and a value of 1 adds 100% of the Material color to the background color. • Premultiply: Assumes that you have already multiplied the RGB values of the Material by the alpha channel. This gives better results than Alpha blending when filtering images or composing different layers. This property only appears if you set Surface Type to Transparent. |
||
Preserve Specular Lighting | Indicates whether to make alpha blending not reduce the intensity of specular highlights. This preserves the specular elements on the transparent surface, such as sunbeams shining off glass or water. This property only appears if you set Surface Type to Transparent. |
||
Sorting Priority | Allows you to change the rendering order of overlaid transparent surfaces. For more information and an example of usage, see the Material sorting documentation. This property only appears if you set Surface Type to Transparent. |
||
Receive Fog | Indicates whether fog affects the transparent surface. When disabled, HDRP doesn't take this material into account when it calculates the fog in the Scene. | ||
Transparent Depth Prepass | Indicates whether HDRP adds polygons from the transparent surface to the depth buffer to improve their sorting. HDRP performs this operation before the lighting pass and this process improves GPU performance. | ||
Transparent Writes Motion Vectors | Indicates whether HDRP writes motion vectors for transparent GameObjects that use this Material. This allows HDRP to process effects like motion blur for transparent objects. For more information on motion vectors, see the motion vectors documentation. This property only appears if you set Surface Type to Transparent. |
||
Depth Write | Indicates whether HDRP writes depth values for GameObjects that use this material. | ||
Depth Test | Specifies the comparison function HDRP uses for the depth test. | ||
Cull Mode | Specifies the face to cull for GameObjects that use this material. The options are: • Front: Culls the front face of the mesh. • Back: Culls the back face of the mesh. This property only appears if you disable Double Sided. |
||
Double-Sided GI | Determines how HDRP handles a material with regards to Double Sided GI. When selecting Auto, Double-Sided GI is enabled if the material is Double-Sided; otherwise selecting On or Off respectively enables or disables double sided GI regardless of the material's Double-Sided option. When enabled, the lightmapper accounts for both sides of the geometry when calculating Global Illumination. Backfaces aren't rendered or added to lightmaps, but get treated as valid when seen from other objects. When using the Progressive Lightmapper backfaces bounce light using the same emission and albedo as frontfaces. (Currently this setting is only available when baking with the Progressive Lightmapper backend.). | ||
Normal Mode | Specifies the mode HDRP uses to calculate the normals for back facing geometry. • Flip: The normal of the back face is 180° of the front facing normal. This also applies to the Material which means that it looks the same on both sides of the geometry. • Mirror: The normal of the back face mirrors the front facing normal. This also applies to the Material which means that it inverts on the back face. This is useful when you want to keep the same shapes on both sides of the geometry, for example, for leaves. • None: The normal of the back face is the same as the front face. This property only appears if you enable Double-Sided. |
||
Receive Decals | Indicates whether HDRP can draw decals on this material’s surface. | ||
Receive SSR | Indicates whether HDRP includes this material when it processes the screen space reflection pass. This property only appears if you set Surface Type to Opaque. |
||
Receive SSR Transparent | Indicates whether HDRP includes this material when it processes the screen space reflection pass. This property only appears if you set Surface Type to Transparent. |
Exposed Properties
Property | Description |
---|---|
BaseColor | The color of the surface. |
BaseColorMap | Specifices a texture to use as the albedo color across the surface. |
Metalness | Determines how metal-like the surface is. A more metallic surface reflects the environment more and its albedo color is less visible. |
MetalnessMap | Specifies a texture that determines the metallic value across the surface. |
SpecularWeight | The intensity of the specular effect. |
SpecularColor | The tint color and intensity of the specular highlights. |
SpecularColorMap | Specifies a texture that determines the specular color across the surface. This determines the color and intensity of the specular highlights at different parts of the surface. |
SpecularRoughness | The glossiness of the specular reflections. The lower the value, the sharper the reflection. |
SpecularRoughnessMap | Specifies a texture that determines the roughness across the surface. Note that this property only uses the red channel of the texture. |
SpecularIOR | The index of refraction to apply to the specular reflection. This defines the material's fresnel reflectivity and is, by default, the angular function used. |
SpecularIORMap | Specifies a texture that determines the specular index of refraction across the surface. Note that this property only uses the red channel of the texture. |
SpecularAnisotropy | The intensity of the specular anisotropy effect. Anisotropy reflects and transmits light with a directional bias and causes materials to appear rougher or glossier in certain directions. |
SpecularRotation | The rotation value changes the orientation of the anisotropic reflectance in UV space. |
SpecularRotationMap | Specifies a texture that determines the specular rotation across the surface. |
EmissionColor | The color of light to emit from this material's surface. Emissive materials appear as a source of light in your scene. |
EmissionColorMap | Specifies a texture that determines the emission color across the surface. |
CoatWeight | The intensity of the coating layer effect. |
CoatColor | The color of the coating layer. |
CoatRoughness | The glossiness of the coat layer's specular reflections. The lower the value, the sharper the reflection. |
CoatThickness | The thickness of the coating layer. |
CoatIOR | The index of refraction to use for the coating layer. |
CoatNormal | Specifies a tangent-space normal map that applies to the coating layer. |
NormalMap | Specifies a tangent-space normal map, similar to the on in the Built-in Renderer's Standard Shader. |
OpacityMap | Specifies a texture that determines the opacity across the surface. |
Opacity | The opacity of the material. This ranges from 0 to 1 where 0 is the least opaque and 1 is the most opaque. |
Advanced Options
Property | Description | |
---|---|---|
Enable GPU Instancing | Enable the checkbox to tell HDRP to render Meshes with the same geometry and Material in one batch when possible. This makes rendering faster. HDRP can't render Meshes in one batch if they have different Materials, or if the hardware doesn't support GPU instancing. For example, you can't static-batch GameObjects that have an animation based on the object pivot, but the GPU can instance them. | |
Emission | Toggles whether emission affects global illumination. | |
Global Illumination | The mode HDRP uses to determine how color emission interacts with global illumination. • Realtime: Select this option to make emission affect the result of real-time global illumination. • Baked: Select this option to make emission only affect global illumination during the baking process. • None: Select this option to make emission not affect global illumination. |
|
Motion Vector For Vertex Animation | Enable the checkbox to make HDRP write motion vectors for GameObjects that use vertex animation. This removes the ghosting that vertex animation can cause. |