我运行到仿射变换四边形的问题,网状,因此纹理坐标错误插补。我相信,在固定管线,你可以只设置folloing glHint:我是否需要4D纹理坐标才能在opengl中实现透视正确的纹理贴图?
但看这似乎是过时的文档。 所以我想没有更多的“简单”解决方案来做到这一点,我需要指定我所有的纹理坐标作为4D向量?
此外,这是否意味着,如果我想加载网仅指定此2D纹理坐标我需要手动检测四边形和正确的吗?下面
所述的图像显示上做出来的4片环面我的问题。
我也尝试在我的着色器中使用插值限定符,如Nicol Bolas here所示。
虽然我相信光滑是默认设置反正。这对我的输出没有影响。
如何做透视修正纹理映射的问题又拿出了多次在这里SO。但我问是否没有更简单的解决方案。我个人对固定功能管道为什么能够为你做这件事的结论是因为GL_QUADS。而且我认为指定4D纹理坐标是核心配置文件中唯一的解决方案。
下面是关于该主题的一些链接,解释4D如何协调工作:
Getting to know the Q texture coordinate...
perspective-correct-texturing-of-trapezoid-in-opengl-es-2-0
correct-glsl-affine-texture-mapping