我目前正在尝试使用类似glTexImage3D
的东西来学习3D纹理上的光线投射。我从一开始就关注着this tutorial。我的最终目标是产生一个程序,能像这样工作:OpenGL中的3D纹理采样
我的理解是,这是使用光线投影法绘制,模型导入为3D纹理。光线投射和纹理采样任务在片段着色器中执行。我希望我能复制这个计划作为一种实践。你能否回答我的问题?
- 应该使用什么文件格式导入3D纹理?
- 我应该使用哪种glsl函数来检测我的光线和纹理之间的距离?
- 3D纹理采样和体积渲染有什么区别?
- 有没有可供我使用的在线教程?
- 如何生成我自己的3D纹理? (是否可以使用搅拌器制作一个?)
谢谢!对于问题1,数据的格式是什么?是否有可能将一个obj文件转换为这种格式? – FunnyFunkyBuggy
@FunnyFunkyBuggy:它基本上是一个3D图像。把它想象成一堆由切片组成的二维图像。将“网格”或几何体“转换”为体积数据当然可能是通过将几何体实际渲染为体积图像。但是这带有它自己的问题,比如你如何定义什么是“内部”。您的典型网格由无限薄的三角形组成,如果网格不是水密的,或者不可定向,则无法“填充”音量。但是如果你问*那个问题,你似乎有一个XY问题。 – datenwolf