在opengl es 2中,有没有办法防止变化的插值

Rob*_*ieC 5 opengl-es

换句话说,模拟旧的 opengl 平面着色模型,例如,您可以有一个线条带,其中每个段都是不同的颜色,而不是跨段的颜色插值?

Mat*_*gro 4

不直接。GLSL for Desktop 有 flat 关键字,但 GLSL ES 没有(它是保留的)。模拟此行为的一个技巧是在三角形(或线段)中的每个顶点分配相同的颜色,因此插值在相同的值之间。

  • '仿真'???不,你滥用这个词!该行为与从激发顶点获取平面变量不同!正如 RobbieC 指出的那样,这意味着向漂亮、高效的三连衣挥手告别。通过管道传递每个面的数据将强制顶点复制,只是为了每次为新的三角形重用顶点时都有不同的变量。我确信 RobbieC 无论如何都知道这个“伎俩”;这就是教程倾向于做事的方式,即使有“平面”可用。我认为他希望编写出比这些教程中更好的代码——就像我一样 (2认同)