GLSL - 停用顶点着色器以进行颜色选择

时间:2016-10-01 21:29:15

标签: glsl

我们正在研究GLSL中的颜色编码选择以进行分配。 我们还使用顶点着色器来改变我们想要选择的对象的颜色。

给定一个布尔值表示我们是否处于拾取模式(让我们称之为selectionMode),我怎样才能确保着色器不会影响颜色。试图挑选一个物体?

我正在考虑将布尔值传递给vertexShader.glsl文件,并根据布尔值更改我们对每个片段应用的操作。这是对的吗?有更简单的方法吗?

修改

很抱歉,如果它不是那么清楚的话。我会尝试更好地解释自己。问题归结为:

  • main.cpp中,我们定义当用户右键单击屏幕时,我们检查鼠标光标下方像素的颜色并相应地选择一个对象:如果它是255 0 0我们选择立方体,如果它是0 255 0我们选择球体等
  • 在vertexshader.glsl中,我们应用公式,以便对象的颜色根据其位置而变化。因此,当我们渲染场景时,立方体不是255 0 0,球体不是0 255 0等等。

我该如何解决这个矛盾呢?

0 个答案:

没有答案