Working with Reflection Shaders

Working with Reflection Shaders in the Advanced Material Editor

Shaders allow you to change the algorithm used by nXtRender when it calculates reflections. The default (Balanced) shader is the best choice for most materials. However there are times when another choice might offer better performance, converge faster, or produce fewer artifacts in the process.

Many of the shaders deal specifically with how artificial light sources are reflected in a material. There are two fundamental algorithms used by nXtRender to calculate these reflections. The first is a “ray casting” algorithm and the second is a “highlight” algorithm. These two algorithms are mathematically equivalent and will eventually produce identical results.

Reflection Shaders.jpg

Reflection Shader choices in nXtRender are:

  • Balanced. This is the default shader and is the correct choice for most situations. nXtRender automatically balances the two algorithms based on the Sharpness of the reflection.
  • Glossy. This shader increases the blurriness of the reflection and prevents ray-casting entirely. No object or light reflections are calculated. Use this shader to increase performance and prevent artifacts for materials with very blurry reflections. Some reflective subtlety may be lost.
  • No Light Source Reflections. This shader excludes ray-casted reflections of light sources. This is sometimes useful in preventing “speckle” artifacts if your material is blurry and your scene contains small, bright, light sources.
  • No Light Source Reflections and No Highlights. This option excludes all reflections of artificial light sources. Object reflections are still calculated.
  • No Highlights. Only raycasting is used to calculate reflections of light sources. This shader is useful when light sources are large and the surface in question is not too blurry. In these cases, the highlight calculation can take a long time to resolve.
  • Monte Carlo. Only raycasting is used to calculate reflections of light sources. The raycasting occurs in an initially very noisy way, and gradually converges to the correct solution. It is most useful when the surface is not too blurry. Both convergence and frame rate may slow when using this option.


See also

nXtRender Add-ons

Forum