许多内置函数都使用 中等精度的输入和输出。 如果您的申请提供 低精度浮点值为 参数或将结果分配给a 低精度浮点变量, 着色器可能必须包含 转换的其他说明 值。
此信息位于何处?我没有找到它in the spec.(我一直在使用 lowp ,并且在查看顶部的链接后对它有所顾虑。)
答案 0 :(得分:0)
我还没有使用iPhone的实现(仅在WebGL和Android上),但正如我在您发布的Apple代码段中所看到的,他们声称他们的实现使用了mediump
,所以,如果您使用的是lowp
,那么它们的实现必须将这些低精度浮点值转换为中等精度值(浮点转换不像整数转换,它们必须调整mantissas和exponents)。
请记住,GLSL(或DX11的HLSL)着色器会编译为特定于实现的代码。