Blender Git Commit Log

Git Commits -> Revision cd095aa

Revision cd095aa by Sergey Sharybin (master)
December 25, 2014, 17:40 (GMT)
Cycles: Distance optimization for QBVH

This commit implements heuristic which allows to skip nodes pushed to the stack
from intersection if distance to them is larger than the distance to the current
intersection.

This should solve speed regression which i didn't notice in the original QBVH
commit (which could have because i had WIP version of this patch applied in my
local branch).

From quick tests speed seems to be much closer to what is was with regular BVH.

There's still some possible code cleanup, but they'll need a bit of assembly
code check and now i want to make it so artists can happily use Cycles over the
holidays.

Commit Details:

Full Hash: cd095aae139ecbcfdf2103f635eae8d5bc5f3b8e
Parent Commit: 30e3aa1
Lines Changed: +201, -99

6 Modified Paths:

/intern/cycles/kernel/geom/geom_object.h (+59, -0) (Diff)
/intern/cycles/kernel/geom/geom_qbvh.h (+21, -22) (Diff)
/intern/cycles/kernel/geom/geom_qbvh_shadow.h (+23, -18) (Diff)
/intern/cycles/kernel/geom/geom_qbvh_subsurface.h (+24, -19) (Diff)
/intern/cycles/kernel/geom/geom_qbvh_traversal.h (+50, -21) (Diff)
/intern/cycles/kernel/geom/geom_qbvh_volume.h (+24, -19) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021