Android 是否可以使用浮点的所有16位对GLSL中的纹理进行采样

Android 是否可以使用浮点的所有16位对GLSL中的纹理进行采样,android,opengl-es,opengl-es-2.0,glsl,Android,Opengl Es,Opengl Es 2.0,Glsl,我现在尝试使用浮点向量对纹理进行采样,但我发现浮点精度只有2^-10位,分辨率非常有限。所以我想知道是否有可能使用mediump浮动变量的所有16位来采样纹理?谢谢。您正在使用16位浮点数的所有16位。这就是a。它们有约11位尾数和5位指数。不能使半精度浮点值的尾数超过~11位 您可以尝试在顶点着色器中将该数字乘以4096,但这仅在纹理坐标最初为32位浮点(在将其转换为半精度之前)时才有帮助 简而言之:纹理坐标通常需要更高的精度。因此,您必须使用更高精度的浮点值。谢谢您的帮助。然而,当我对纹理进

我现在尝试使用浮点向量对纹理进行采样,但我发现浮点精度只有2^-10位,分辨率非常有限。所以我想知道是否有可能使用mediump浮动变量的所有16位来采样纹理?谢谢。

您正在使用16位浮点数的所有16位。这就是a。它们有约11位尾数和5位指数。不能使半精度浮点值的尾数超过~11位

您可以尝试在顶点着色器中将该数字乘以4096,但这仅在纹理坐标最初为32位浮点(在将其转换为半精度之前)时才有帮助


简而言之:纹理坐标通常需要更高的精度。因此,您必须使用更高精度的浮点值。

谢谢您的帮助。然而,当我对纹理进行采样时,我发现只有10位可以使用,因为采样器是标准化的。我想知道是否有可能使用所有的16位,以便我能够达到更高的精度?