blender/intern/cycles/bvh
Sergey Sharybin 5298853e95 Cycles: Add option to split curve motion primitives by time steps
The idea is to create several smaller BVH nodes for each of the motion
curve primitives. This acts as a forced spatial split for the single
primitive.

This gives up render time speedup of motion blurred hair in the cost
of extra memory usage. The numbers goes as:

BVH Steps     Render time (sec)       Memory usage (MB)
    0               258                    191
    1               123                    278
    2                69                    453
    3                43                    627

Scene used for the tests is the agent's hair from one of the barber
shop scenes.

Currently it's only limited to scenes without spatial split enabled,
since the spatial split builder requires some changes to work properly
with motion steps coordinates.
2017-01-20 12:46:18 +01:00
..
bvh_binning.cpp Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_binning.h Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_build.cpp Cycles: Add option to split curve motion primitives by time steps 2017-01-20 12:46:18 +01:00
bvh_build.h Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_node.cpp Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_node.h Cycles: Cleanup, style 2016-10-24 12:26:12 +02:00
bvh_params.h Cycles: Add option to split curve motion primitives by time steps 2017-01-20 12:46:18 +01:00
bvh_sort.cpp Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_sort.h Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_split.cpp Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_split.h Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_unaligned.cpp Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh_unaligned.h Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00
bvh.cpp Cycles: Cleanup, style 2016-10-24 12:26:12 +02:00
bvh.h Cycles: Deduplicate QBVH node packing across BVH build and refit 2016-09-09 11:32:05 +02:00
CMakeLists.txt Cycles: Implement unaligned nodes BVH builder 2016-07-07 17:25:48 +02:00