2012-12-16 72 views
1

我想做一个基于纹理的CT数据体积渲染。我有一堆2d CT图像,我想用它作为opengl中的3d纹理(真正的jogl)。我必须按照多边形代理几何体的方式进行操作,当查看参数更改时,它会发生移位。我如何将2D图像转换为一个3D纹理?我一直无法找到有关opengl如何预期格式化3D图像的任何信息。我看到这个:https://stackoverflow.com/questions/13509191/how-to-convert-2d-image-into-3d-image,但我不是这样。将二维图像的堆栈转换为三维图像,体积渲染

另外,我仍然对这种体积渲染技术感到困惑。是否有可能在3D纹理中采用3d位置并将其映射到四维的二维角?我发现这个例子:http://www.felixgers.de/teaching/jogl/texture3D.html但我不知道这是否意味着你必须使用三维顶点。有没有人用明确的例子知道更多的资源?

回答

2

OpenGL确实知道3D纹理格式,其中每个纹素是[0; 1]^3立方体中的一个小子体积。当你用这种纹理纹理一个三角形或四边形时,就好像你切出了这个体积的一个薄片。如果你想要一个体积,你必须写一个体积raycaster。如果你是谷歌的“GPU直接渲染”,你应该找到大量的教程。