我尝试使用OpenGL,GLSL和C++实现光线投射体积渲染。众所周知,它是计算密集型的,很难获得良好的交互性,例如移动视点和放大和缩小。我们可以使用自适应方案来修改参数,以实现交互过程中的反应性。
我们可以修改的一个参数是图像采样距离:相邻光线之间图像平面上 x 和 y 方向的距离。
当我进行光线投射体积渲染时,首先我绘制一个立方体,然后渲染其背面(出口点)和正面(入口点),然后我可以进行光线投射通道。
我的问题是:如何减小图像采样距离?
我的问题是:如何减小图像采样距离?
理想情况下,通过对原始卷数据进行降采样。如果您的采样距离比体素距离更远,则会出现令人讨厌的渲染伪影。作为一般规则,您的采样距离应与沿光线的体素距离完全匹配。
我目前正在编程的应用程序也可以处理高分辨率的医学图像。请问你们的卷有什么分辨率?您将遇到的主要问题是将卷放入 GPU 的快速内存中。如果数据超过这些限制,则 GPU 必须从系统内存中交换数据,这很慢。这很容易区分交互式速率和非常慢的幻灯片放映。