Mix Shader - Arnold User Guide
![]() |
![]() |
![]() |
![]() |
Mix shader renders with their mix weight images
The Mix shader shader is used to blend or add two shaders (including light AOVs). It returns a linear interpolation of Shader1 and Shader2 according to the Mix Weight attribute. A Mix Weight value of 0 outputs Shader 1, a value of 1 outputs Shader2, and a value of 0.5 mixes evenly between Shader1 and Shader2.
You cannot mix a surface shader ('closure') with an RGBA shader such as Flat, otherwise, the result of the surface shader is lost. You need to use two shaders of the same type such as OpenPBR Surface.
Mode
The mode by which the shaders are layered. Choose between Blend or Add.
Blend

Two OpenPBR Surface shaders (white -> Shader1 and gold -> Shader2) mixed together using the 'Blend' mode (Checker -> Mix Weight).
Add
The Add mode can break energy conservation if not used carefully. It is intended for adding two volume shaders, or two shaders that only emit light while adding two surface shaders like OpenPBR Surface is not physically correct.
Mix weight does not work with Add mode. You should use Blend instead.

Two OpenPBR Surface shaders (gold -> Shader1 and white -> Shader2) mixed together using the 'add' mode (not physically correct).
![]() |
![]() |
![]() |
Emission color: yellow | Emission color: cyan | Mix shader result using 'add' |
Two OpenPBR Surface (yellow -> Shader1 and cyan -> Shader2) shaders mixed together using the 'add' mode.
![]() |
![]() |
![]() |
Scatter color: yellow | Scatter color: cyan | Mix shader result using 'add' |
Two Standard Volume (yellow -> shader1 and cyan -> shader2) shaders mixed together using the 'add' mode.
Mix Weight
Controls the amount of blending between shaders.
You may need to insert a range shader when connecting a bitmap to mix.
![]() |
![]() |
![]() |
0 | 0.5 (default) | 1 |
You can connect a texture to the Mix Weight to control the blending between Shader1 and Shader2.
![]() |
![]() |
![]() |
![]() |
shader1 | shader2 | checker -> mix weight | Result with Mix shader |
Shader 1
Input for shader one.

Shader 2
Input for shader two.

Add Transparency
Previously, the Add mode of the Mix shader also added the transparency closures, which means that effects such as Min Pixel Width would be double-counted, leading to objects disappearing. Now, we will add only non-transparency closures, while we pass through the max of the transparency closures. The old behavior can still be obtained by setting Add Transparency to true.