Profile picture
Morgan McGuire @CasualEffects
, 12 tweets, 3 min read Read on Twitter
A thread of notes on the ACM ToG Production Rendering special edition from @Peter_shirley & me. dl.acm.org/citation.cfm?i…
Solid Angle Arnold: kicked off the path tracer revolution

Sony Pictures Imageworks Arnold: fork of the SA renderer specialized for Sony

Manuka: Weta's path tracer

Hyperion: Disney's relatively small path tracer

Renderman: Pixar's rebooted renderer, now using path tracing
All use path tracing (mostly forward-only with a few photon maps), subdivision surfaces + instancing, per-face textures via PTex, SIMD accelerated CPU/GPU ray casts, most have explicit direct illumination, special case volumes and hair.
None have level of detail beyond subdivision (and subdivision patches are often subpixel) due to problems like light leaks. Most use low-discrepancy sampling and some form of lightweight post-process denoising. Everyone uses a BVH, but leaf nodes are specialized for hair.
Solid Angle's Arnold uses lazy evaluation of procedural geometry/instances/subdivisions. It starts tracing without a full BVH and expands as needed, which reduces the time to the first pixel for interactive tools.
Sony's Arnold preprocesses all geometry per frame for simplicity and parallelism during the trace. It is perhaps the closest to a true brute force path tracer in production.
Manuka is a spectral renderer (not just RGB), and the only one currently in major use. It also uses decoupled shading and doesn't handle "lights" specially: all emitters are just micropolygons, and one light surface might become millions of them.
Hyperion uses a sorted, deferred architecture. While the other renderers try to recapture coherence or ignore it, Hyperion preserves coherence during the rendering process: it sorts all rays and all hit points (by material) to maximize memory coherence for all operations.
Renderman is relatively baroque in its path tracing implementation, which might also indicate maturity and commercial generality. It has sophisticated methods for sampling hard cases and lots of controls. The Sony Arnold renderer one could imagine mimicking, but not this one!
Not in the papers, but overheard when discussing renderers: "we wrote a giant data management system, which as a small side effect happens to produce pictures." As in games, film devs spend more time worrying about file handles, tool integration, and network traffic than shading.
Interestingly, no-one has gotten aggressive denoising to work; temporal low frequency noise appears when sampling too little. Likewise, light / shadow / visibility leaks from LOD are unacceptable when tracing full global illumination, so they aren't used.
A huge open challenge: importance sampling emitters (lights), taking visibility into account. Many renderers build a BVH over lights and precompute CDFs, but unoccluded light contribution is a poor proxy for the incident direct illumination when there is complex geometry.
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to Morgan McGuire
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member and get exclusive features!

Premium member ($30.00/year)

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!