【问题标题】:In opengl es 2, is there a way to prevent interpolation of varyings在opengl es 2中,有没有办法防止变化的插值
【发布时间】:2021-02-18 13:54:22
【问题描述】:

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

【问题讨论】:

标签: opengl-es


【解决方案1】:

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

【讨论】:

  • 对,但是你不能使用条带...不过总比没有好
  • '模拟'???不,你滥用这个词!该行为与从激发顶点获取平面变量不同!正如 RobbieC 所指出的,这意味着向漂亮、高效的三条纹挥手告别。通过管道传递每个面的数据将强制顶点重复,只是在每次将顶点重用于新的 tri 时都有不同的变量。我确信 RobbieC 无论如何都知道这个“技巧”。这是教程倾向于做事的方式,即使“平面”可用。我认为他希望编写比那些教程中更好的代码——就像我一样
猜你喜欢
  • 1970-01-01
  • 2017-12-01
  • 2019-02-15
  • 2022-08-18
  • 2020-10-10
  • 2023-03-16
  • 1970-01-01
  • 2012-09-23
  • 1970-01-01
相关资源
最近更新 更多