Blender Git Loki
Git Commits -> Revision ad10cbf
Revision ad10cbf by Brecht Van Lommel (master) January 9, 2013, 21:09 (GMT) |
Cycles: multiple importance sampling for lamps, which helps reduce noise for big lamps and sharp glossy reflections. This was already supported for mesh lights and the background, so lamps should do it too. This is not for free and it's a bit slower than I hoped even though there is no extra BVH ray intersection. I'll try to optimize it more later. * Area lights look a bit different now, they had the wrong shape before. * Also fixes a sampling issue in the non-progressive integrator. * Only enabled for the CPU, will test on the GPU later. * An option to disable this will be added for situations where it does not help. Same time comparison before/after: http://www.pasteall.org/pic/show.php?id=43313 http://www.pasteall.org/pic/show.php?id=43314 |
Commit Details:
Full Hash: ad10cbf04aed17c69ccd4e15921669d18ed987e1
SVN Revision: 53688
Parent Commit: 97d1abf
Lines Changed: +586, -200
10 Modified Paths:
/intern/cycles/blender/blender_object.cpp (+4, -4) (Diff)
/intern/cycles/kernel/kernel_camera.h (+0, -1) (Diff)
/intern/cycles/kernel/kernel_emission.h (+45, -16) (Diff)
/intern/cycles/kernel/kernel_light.h (+309, -158) (Diff)
/intern/cycles/kernel/kernel_path.h (+65, -13) (Diff)
/intern/cycles/kernel/kernel_types.h (+4, -2) (Diff)
/intern/cycles/kernel/osl/osl_services.cpp (+8, -0) (Diff)
/intern/cycles/kernel/osl/osl_shader.cpp (+5, -1) (Diff)
/intern/cycles/render/light.cpp (+22, -5) (Diff)
/intern/cycles/util/util_math.h (+124, -0) (Diff)
/intern/cycles/kernel/kernel_camera.h (+0, -1) (Diff)
/intern/cycles/kernel/kernel_emission.h (+45, -16) (Diff)
/intern/cycles/kernel/kernel_light.h (+309, -158) (Diff)
/intern/cycles/kernel/kernel_path.h (+65, -13) (Diff)
/intern/cycles/kernel/kernel_types.h (+4, -2) (Diff)
/intern/cycles/kernel/osl/osl_services.cpp (+8, -0) (Diff)
/intern/cycles/kernel/osl/osl_shader.cpp (+5, -1) (Diff)
/intern/cycles/render/light.cpp (+22, -5) (Diff)
/intern/cycles/util/util_math.h (+124, -0) (Diff)