我现在尝试使用浮点矢量对纹理进行采样,但我发现浮点精度仅为2 ^ -10位且分辨率非常有限。所以我想知道我是否可以使用mediump浮动变量的所有16位来对纹理进行采样?谢谢。
答案 0 :(得分:2)
使用16位浮点数的全部16位。这就是16-bit floating-point number 的内容。它们有~11位尾数和5位指数。你不能使半精度浮点值超过~11位的尾数。
您可以尝试在顶点着色器中将数字乘以4096,但这只有在纹理坐标原来是32位浮点数(将其转换为半精度)之前才有用。
简而言之:纹理坐标通常需要比这更精确。因此,您将拥有以使用更高精度的浮点值。