blender/intern/cycles/util
Brecht Van Lommel ad10cbf04a 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
2013-01-09 21:09:20 +00:00
..
CMakeLists.txt Cycles Hair: refactoring to support generic attributes for hair curves. There 2013-01-03 12:08:54 +00:00
util_algorithm.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_args.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_boundbox.h New feature 2012-12-28 14:21:30 +00:00
util_cache.cpp Additional fix #32074, by Sven-Hendrik Haase (svenstaro). Boost version header must be included in cycles in order to expand the version check macro. 2012-07-29 13:52:38 +00:00
util_cache.h Cycles: add option to cache BVH's between subsequent renders, storing the BVH on 2012-01-16 13:13:37 +00:00
util_color.h code cleanup: quiet all warnings about double promotion (either by changing the type or explicitly casting). 2012-06-09 17:45:22 +00:00
util_cuda.cpp Cycles: add some extra CUDA nvcc paths for runtime compile, might help for #33622. 2012-12-21 10:27:35 +00:00
util_cuda.h patches from fedora: 2012-12-21 03:02:36 +00:00
util_debug.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_dynlib.cpp Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_dynlib.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_foreach.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_function.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_hash.h style cleanup: assignment & indentation. 2012-06-09 18:56:12 +00:00
util_image.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_list.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_map.h Cycles: first batch of windows build fixes, not quite there yet. 2011-05-03 18:29:11 +00:00
util_math.h Cycles: multiple importance sampling for lamps, which helps reduce noise for 2013-01-09 21:09:20 +00:00
util_md5.cpp style cleanup: assignment & indentation. 2012-06-09 18:56:12 +00:00
util_md5.h Cycles OSL: refactoring and fixes 2012-11-03 14:32:13 +00:00
util_memarena.cpp Cycles: remove deprecated strict aliasing flag for opencl, fix missing update 2011-09-19 11:57:31 +00:00
util_memarena.h Cycles: remove deprecated strict aliasing flag for opencl, fix missing update 2011-09-19 11:57:31 +00:00
util_opencl.cpp Cycles: disable OpenCL in builds for now, since it's not working and is only 2012-11-06 19:58:51 +00:00
util_opencl.h style cleanup: assignment & indentation. 2012-06-09 18:56:12 +00:00
util_opengl.h Cycles: build without GLUT test app by default. 2011-05-01 10:00:21 +00:00
util_param.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_path.cpp Cycles OSL: shader script node 2012-11-03 14:32:35 +00:00
util_path.h Cycles OSL: shader script node 2012-11-03 14:32:35 +00:00
util_progress.h Cycles: persistent images option 2012-11-09 08:46:53 +00:00
util_set.h Cycles: first batch of windows build fixes, not quite there yet. 2011-05-03 18:29:11 +00:00
util_stats.h Cycles: no need in spin lock in memory statistics 2012-11-09 08:47:08 +00:00
util_string.cpp Cycles: compile opencl kernels in non-blocking thread, and don't crash on 2011-09-02 00:10:03 +00:00
util_string.h Cycles: compile opencl kernels in non-blocking thread, and don't crash on 2011-09-02 00:10:03 +00:00
util_system.cpp style cleanup: block comments 2012-06-09 17:22:52 +00:00
util_system.h Fix #29259: cycles issues on certain processors. Now two versions of the kernel 2011-11-15 15:13:38 +00:00
util_task.cpp Fix #33107: cycles fixed threads 1 was still having two cores do work, 2012-11-07 21:00:49 +00:00
util_task.h Fix #33107: cycles fixed threads 1 was still having two cores do work, 2012-11-07 21:00:49 +00:00
util_thread.h Fix #33375: OSL geom:trianglevertices gave wrong coordinates for static BVH. 2012-12-01 19:15:05 +00:00
util_time.cpp Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_time.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_transform.cpp Fix #32900: object motion blur not working on the GPU. To make this work I disabled motion 2012-11-29 00:43:50 +00:00
util_transform.h Fix cycles aliasing warnings caused by motion blur transforms. 2012-12-21 10:26:48 +00:00
util_types.h Cycles Hair: refactoring to support generic attributes for hair curves. There 2013-01-03 12:08:54 +00:00
util_vector.h Cycles: clang build fixes. 2011-08-10 19:45:08 +00:00
util_view.cpp style cleanup: assignment & indentation. 2012-06-09 18:56:12 +00:00
util_view.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00
util_xml.h Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later. 2011-04-27 11:58:34 +00:00