I’m a bit confused regarding the functioning of rtContextLaunch3D. How is it different from rtContextLaunch2D? A simple answer is rtContextlaunch3D has a 3D computational grid and rtContextLaunch2D has 2D computational grid.

rtContextLaunch3D requires to have a 3D output buffer. Can someone please tell me the significance of 3D buffer? Also the Launch Index for rtContext3D is 3 dimensional i.e. it generates rays in 3D (for each cell of the computation grid)? How is ray Tracing performed with 3D launch index?


Not true. In fact, you could have no output buffer if you really wanted to. You can index your data however you like. Keep in mind OptiX was designed for more than just rendering applications.

I’ve seen 3D buffers used for rendering in 3D :). The x/y dimensions were the screen as normal, and the z dimension was the left eye and right eye. I don’t know if this is a good way to do it or not (just kind of messing around as a test).

But really I think you’re too focused on generic ray tracers. When you do a 3 dimensional launch, you supply to your kernels a 3 dimensional launch index. Do whatever you want with the three dimensional launch index.