[vtkusers] vtkOpenGLGPUVolumeRayCastMapper & Texture Compression

endlosschleife1 endlosschleife1 at googlemail.com
Tue Apr 26 03:12:33 EDT 2011


Hi,

not sure if this question is more VTK-specific or more OpenGL-specific. I
played around with the vtkOpenGLGPUVolumeRayCastMapper and changed the
internal format for the TexImage3D calls to S3TC format. I wanted to check
what the tradeoff is between using compressed textures to handle more data
and rendering speed. To my surprise I not only was able to get more data
into texture memory, but the volume rendering (a MIP) for the 512x512x700
data set that I used was also faster (about 20%). My graphics card is a
NVidia G210M.

Maybe my assumptions were wrong?

I assumed that the shader that does the actual volume ray casting does not
care about whether a texture is compressed or not and that the only
difference is that when the tracer asks for the value of the voxel that in
one case the result comes directly from the texture buffer and in the other
case it decompresses the value of the requested pixel on the fly (I
understand that the algorithm is optimized for random access and on-the-fly
decompression speed). Still I assumed at least some performance drop.

Now where I would understand the performance increase would be if the
textures (compressed or uncompressed) do internally get copied around while
performing ray casting and that the reduced bandwidth requirements of the
compressed textures make the difference, but I don't see where - and why -
this should happen.

Any ideas?

Thank you.

Mark
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20110426/d3b9f3e5/attachment.htm>


More information about the vtkusers mailing list