Page MenuHome

Cheaper sampling for distant mesh area lights
Needs ReviewPublic

Authored by Antonis Ryakiotakis (psy-fi) on Sun, Jan 12, 8:44 PM.

Details

Reviewers
None
Group Reviewers
Cycles
Summary

This patch uses Erik Heitz's A Low-Distortion Map Between Triangle and Square to skip square root evaluation in mesh light sampling. There may be more places in cycles where this could be useful, for now just using it in mesh lights.

Based on ideas from

https://pharr.org/matt/blog/2019/02/27/triangle-sampling-1.html
https://pharr.org/matt/blog/2019/03/13/triangle-sampling-1.5.html

Diff Detail

Repository
rB Blender

Event Timeline

I'm testing this in a very simple file with an emitting suzanne mesh and a diffuse plane on the ground but I can't see any performance difference. Probably it's probably not worth submitting but will leave here just in case it's useful somehow.

srqt() isn't that much of a performance issue any more as it once was. That said, the newer mapping should give us a better sample distribution.