SIMD Shading back

(L) [2007/09/05] [Michael77] [SIMD Shading] Wayback!

Hi,


I am wondering how you perform shading for a whole bundle of rays. I currently need to split the rays up since each ray could hit another shader (and therefore perform totally different calculations). Of course, I was already thinking about some optimizations like testing, if all rays in the bundle hit the same primitive (or at least the same object), but this still doesn´t seem to be the best option.


Another Idea would be to sort the rays based on the material the hit and regroup them. Of course, this probably looses much coherency for secondary rays unless you sort the rays in a 5D-Tree


Any ideas on this topic would be great [SMILEY Smile]
(L) [2007/09/05] [moris] [SIMD Shading] Wayback!

Hi,


Personnaly, I use bundle of SIMD rays (4x4 SIMD rays => 64 single rays). For each SIMD ray, I check material coherency before calling the "SIMD Ray" shader function or 4 times the "Single Ray" shader function. For my models, I didn't really bench that, but coherency probability looks quite high.
_________________
GC


If you don't understand me, perhaps there is nothing to understand
(L) [2007/09/05] [Phantom] [SIMD Shading] Wayback!

That's what I do as well. In a few days, Intel will put up an article on this exact topic, with implementation details.
_________________
--------------------------------------------------------------

Whatever
(L) [2007/09/05] [Michael77] [SIMD Shading] Wayback!

Ok, sounds good [SMILEY Smile] Can´t wait to have a look at that paper.


Thanks.
(L) [2007/09/07] [goodbyte] [SIMD Shading] Wayback!

Sounds interesting, my current approach is to perform interpolation/texture lookup in a separate step, then I run my different shaders with masks for the shader types. It seems to pay off quite well for general scenes where you have many different shaders and need a virtual function call for each shader. Don't know how it would perform in a realtime raytracer though...
(L) [2007/09/14] [Phantom] [SIMD Shading] Wayback!

No and I'm not sure why not, since I sent them the final revision two weeks ago. PM me if you want a preview by mail.
_________________
--------------------------------------------------------------

Whatever

back