This shader makes it possible to evaluate different shader trees per ray. This decreases the shading complexity of a scene and thus the render times, and increases artistic control. It can be used to remove unnecessary secondary rays (specular/sss), make speculars even more glossy in specular rays, control the color of opacity in shadow rays to fake light scattering through tissue or add a second specular lobe in-camera rays only.

Camera       

Plug the output of the shader you wish to use when calculating camera rays here. 

Red standard_surface shader connected to camera attribute of ray_switch_shader

 

The shader evaluation that happens for transparent shadows on objects. A use for this parameter could be to connect a ray_switch shader to the opacity parameter of a standard_surface shader. That way you can get a shadow that's different than the actual transparency of the object. For example, to reduce the amount of shadow cast by the object, or to use a different cutout opacity pattern.

Body object's standard_surface shader has red transmission_color (opaque is disabled)

Diffuse Reflection     

Plug the output of the shader you wish to use when calculating diffuse reflection rays here.


Red emissive shader -> diffuse_reflection of ray_switch_shader

Diffuse Transmission

Plug the output of the shader you wish to use when calculating diffuse_transmission rays here.

Red emissive shader -> diffuse_transmission of ray_switch_shader

Specular Reflection

Plug the output of the shader you wish to use when calculating glossy rays here. 

Red standard_surface shader -> specular_reflection of ray_switch_shader

Specular Transmission

Plug the output of the shader you wish to use when calculating specular_transmission rays here. 

Red standard_surface shader -> specular_transmission of ray_switch_shader

Volume

Plug the output of the shader you wish to use when calculating volume rays here. 

 

 

 

 

Pepe model by Daniel M. Lara (Pepeland)

  • No labels