Tag Archives: renderer

Modern Ray-trace renderers

The goal of a modern physically accurate render engine is to calculate indirect light based on the direct illumination hitting surfaces in the scene.

Arnold’s solution to this is to use ‘Monte Carlo’ ray tracing. It renders the image by randomly tracing samples of possible light paths. Repeated sampling of a given pixel will eventually cause the average of the samples to converge on the correct solution, making it very faithful to reality.
‘Monte Carlo’ in a broader computational context, relates to algorithms for repeated random sampling to obtain numerical results. The gambling analogy is the reason it was named after the famous casino.

Arnold is referred to as an ‘unbiased’ renderer – it does not introduce any systematic error, or bias into the radiance approximation.

For performance increases, some renderers use irradiance caches and photon and light map storage to speed up rasterization. Instead, Arnold opts for the ‘brute force’ ray tracing method, recomputing the GI values for every single shaded point seperately and independently from other points. As explained by Eric Haines of ray tracing news ‘there’s only a single version of the model stored, not one for the rasterizer and one for the ray-tracer. This avoids mis-syncs and means that there is minimal pre-computation time. (Haines, E 2010)

This also simplifies the pipeline, infrastructure and user experience.

The philosophy behind this is perhaps best summed up in the Arnold user guide –

‘your time is more valuable than your computer’s time; why spend an extra 30 minutes working with photon mapping or final gather settings, even if it saves 30 minutes render time (and more often than not it doesn’t). That’s still 30 minutes not spent modeling, animating or lighting.’ (mtoa_user_guide.pdf , 2012)
A down-side of this path-tracing method is that it may not consider all possible paths, and subsequently may not consistently handle phenomena like caustics accurately.

As Marcos Fajardo, the chief architect of Arnold admits – ‘one of the only limitations of Arnold is that it does not really do caustics very well. We haven’t bothered to spend our resources optimizing on caustics.’ (Seymour, M 2012)

He goes on to say that in all his years developing for the film industry, accurate caustics is not something that has ever really been a demand from his clients. He also agrees that further optimization is needed with particularly interest in the areas of motion blur and instancing.


Seymour, M 2012 http://www.fxguide.com/featured/the-art-of-rendering/

Haines, E 2010 http://tog.acm.org/resources/RTNews/html/rtnv23n1.html#art3

mtoa_user_guide.pdf https://www.solidangle.com/support/