blender/intern/cycles
Thomas Dinges b3def11f5b Cycles: Record all possible volume intersections for SSS and camera checks
This replaces sequential ray moving followed with scene intersection with
single BVH traversal, which gives us all possible intersections.

Only implemented for CPU, due to qsort and a bigger memory usage on GPU
which we rather avoid. GPU still uses the regular bvh volume intersection code, while CPU now uses the new code.

This improves render performance for scenes with:
a) Camera inside volume mesh
b) SSS mesh intersecting a volume mesh/domain

In simple volume files (not much geometry) performance is roughly the same
(slightly faster). In files with a lot of geometry, the performance
increase is larger. bmps.blend with a volume shader and camera inside the
mesh, it renders ~10% faster here.

Patch by Sergey and myself.

Differential Revision: https://developer.blender.org/D1264
2015-04-29 23:31:06 +02:00
..
app Fix compilation of cycles network server when logging is enabled 2015-03-29 22:22:53 +02:00
blender Cycles: Added support for light portals 2015-04-28 01:30:16 +05:00
bvh Fix T44544: Cached BVH is broken since BVH leaf split 2015-04-29 15:38:07 +05:00
cmake Cycles: Post-reintegration tweaks to ensure things do compile 2015-01-01 01:31:08 +05:00
device Cycles: Fix compilation error on windows after recent logging changes 2015-04-10 22:35:10 +05:00
doc Cycles: relicense GNU GPL source code to Apache version 2.0. 2013-08-18 14:16:15 +00:00
kernel Cycles: Record all possible volume intersections for SSS and camera checks 2015-04-29 23:31:06 +02:00
render Cycles: Fix wrong order in object flags calculations 2015-04-30 01:09:48 +05:00
subd Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
util Cycles: Fix crashes when loading cache created with pre-leaf split builds 2015-04-29 15:48:49 +05:00
CMakeLists.txt Optionally use c++11 stuff instead of boost in cycles where possible. We do and continue to depend on boost though 2015-03-29 22:12:40 +02:00
SConscript Optionally use c++11 stuff instead of boost in cycles where possible. We do and continue to depend on boost though 2015-03-29 22:12:40 +02:00