【发布时间】:2020-03-17 08:29:42
【问题描述】:
我在 Android 上的 OpenGL ES 中采样纹理时遇到问题。我正在采样的对象是一个地形图块,纹理坐标是根据每个顶点的 x-z 位置生成的。对于典型的图块,纹理坐标的范围在 -5 和 5 之间(这意味着我的纹理应该在地形图块上重复 10 次)。
当我查看在 Android 上运行的着色器时,它在图块的中心看起来完全没有问题,但在纹理坐标较大的边缘,我发现我认为是采样中的精度问题:
这正常吗?如果是这样,我应该将我的纹理坐标限制在什么范围内以防止它发生? 0比1?我现在只是将原始纹理坐标(-5 到 5)作为 float2 直接发送到着色器中。纹理为 512x512。
还要注意,我没有在着色器中手动设置精度;它们是从 HLSL 代码自动生成的。我正在使用 MonoGame 来执行此操作。
【问题讨论】:
标签: android opengl-es textures precision