使用顶点着色器确定线方向

时间:2010-04-01 11:21:42

标签: c++ opengl geometry shader glsl

我希望能够计算线到眼睛坐标的方向,并使用顶点和片段着色器为线上的每个像素存储该值。我的想法是在每对顶点的模型视图变换之后使用atan2(Gy / Gx)计算方向梯度,然后将该值量化为颜色强度以传递到片段着色器。如何才能访问顶点对的位置来实现这一目标,还是应该使用另一种方法? 感谢

1 个答案:

答案 0 :(得分:1)

  

我如何才能进入这些职位   顶点对?

如果您只是使用顶点和片段着色器,则不能这样做。简单的方法是使用geometry shaders。在此着色器阶段内,您可以访问构成线段的顶点对。然后直接确定线方向并将其传递给片段着色器。

如果几何着色器不是一个选项(因为您的目标受众),您可以复制几何体(在每个顶点存储实际顶点加上下一个顶点),然后在顶点着色器中进行计算。