[Bf-committers] BIH progress update

Daniel Genrich daniel.genrich at gmx.net
Thu Mar 20 09:53:27 CET 2008


Hello,

Before implementing BVH from ground up, you may like to take a look at 
blenkernel/intern/kdop.c which is a quadtree KDOP BVH implementation.

Just FYI :)

Greetings
Daniel


Yves Poissant schrieb:
> This is a head-up to give a status report about the BIH implementation I'm 
> working on.
>
> I just spent the last 5 days working on BIH. Not much progress 
> unfortunately. On some file, I get spectacular improvement, up to 4 times 
> faster render times than octree. But on some other files, I can get 
> humongous render times. On average, there is very little gain. I tried all 
> the optimizing tricks I know, including caching the quad data, but that 
> gained very little too. I rewrote the tree building algorithm to allow me to 
> test different partitioning heuristics but I have not started on that yet. 
> I've added code to cut out empty space but that deepens the tree and 
> lengthens the total render time. As I added code to cut off empty space, the 
> partitioning process looked more and more like a defered BVH so I'm begining 
> to think that I should try a SAH BVH just to get a comparison point. I 
> haven't touched on the ray-triangle intersection aspect yet because the 
> partitioning complexity is way too high right now and that needs to be 
> optimized first. I need get data out of the partitioning and traversal for 
> the scenes that takes huge render times to figure what makes those scenes 
> behave that bad.
>
> I thought of giving this head-up because I will now have to return to my 
> regular work for a while but I will be back on the BIH later. I'm sure the 
> back burner will keep the issue warm in my head though.
>
> What is the policy about using SSE ? Someone posted an SSE function on ompf 
> forum that computes intersections between one ray and 4 triangles in 
> parallel and at some point I'd like to try that. Since quads are 2 triangles 
> and I currently store 2 quads per leaves, that would fit very well. SSE 
> could also be used efficiently when doing bounding boxes operations.
>
> Yves 
>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
>   



More information about the Bf-committers mailing list