Opengl 使用着色渲染行星周围的大气
我创造了一个行星,想在它周围创造一个大气层。所以我指的是这个网站: 我不明白这一点: 正如Nishita等人1993年提出的查找表一样,我们可以从大气中的任何采样点获得光线到太阳的光学深度。我们所需要的是采样点的高度(x)和垂直于太阳的角度(y),然后我们在表格中查找(x,y)。这样就不需要计算一个外散射积分。另外,光线对相机的光学深度也可以用同样的方法计算出来,对吗?嗯,差不多了。当相机在太空中时,其工作方式相同,但当相机在大气中时则不同。这是因为查找表中使用的采样光线从高度x的某个点一直延伸到大气顶部。它们不会停留在大气层中间的某个点,就像相机在大气层中所需要的那样。 幸运的是,解决这个问题的方法非常简单。首先,我们从采样点P到相机进行查找,以获得光线穿过相机到达大气顶部的光学深度。然后我们对同一条光线进行第二次查找,但从摄影机开始,而不是从P开始。这将为我们提供光线中不需要的部分的光学深度,我们可以从第一次查找的结果中减去它。检查图16-3中从地面顶点(b1)开始的光线,以获得该点的图形表示 第一个问题-光学深度不是取决于你如何看,也就是说,取决于视角吗?如果是的话,表中只给出了从陆地到大气层顶部的直线光线的光学深度。那么光线穿透大气层到达摄像机的情况又如何呢?在这种情况下,如何获得光学深度 第二个问题-它所说的垂直角是什么…比如,它和我们在极坐标中使用的z轴的角度一样吗 第三个问题——这篇文章讨论了光线向太阳的散射……难道不是相反吗?就像从太阳到某个点 对这篇文章或我的问题的任何解释都会有很大帮助Opengl 使用着色渲染行星周围的大气,opengl,glsl,shader,lighting,Opengl,Glsl,Shader,Lighting,我创造了一个行星,想在它周围创造一个大气层。所以我指的是这个网站: 我不明白这一点: 正如Nishita等人1993年提出的查找表一样,我们可以从大气中的任何采样点获得光线到太阳的光学深度。我们所需要的是采样点的高度(x)和垂直于太阳的角度(y),然后我们在表格中查找(x,y)。这样就不需要计算一个外散射积分。另外,光线对相机的光学深度也可以用同样的方法计算出来,对吗?嗯,差不多了。当相机在太空中时,其工作方式相同,但当相机在大气中时则不同。这是因为查找表中使用的采样光线从高度x的某个点一直延
提前谢谢 我不是这方面的专家,但我研究过大气散射和各种物理和光学模拟。我强烈建议您考虑以下问题:
所以它只是曲面法线和投射光线之间的角度。它的缩放,所以
vert.angle=0
表示光线和法线相同,vert.angle=1
表示方向相反。谢谢!但是我想知道这个网站谈论的角度是什么(表的y参数)。我不明白它是什么角度。你能帮我弄一下@Spektre吗