gpt4 book ai didi

opengl-es - 着色器 MAD 优化和精度问题

转载 作者:行者123 更新时间:2023-12-02 03:32:54 25 4
gpt4 key购买 nike

我在基于 OpenGL ES 的硬件上遇到 MAD 优化和数字接近无限/ float 边界的问题。

我正在尝试做的事情:

vec2 k = d/l;         // VERYY BIG number 10^6 -10^8, but still ok by itself

//vertex.w = 0 or 1
res += k * (1.0 - vertex.w); // enable/disable by !vertex.w This form is ok
//res += k - k *vertex.w; // but this is not (I think it becomes NaN, cuz I don't see a thing)

最有趣的是(并让我为此苦苦挣扎了很长时间)它在桌面硬件上工作正常。

所以...这是正常的行为吗,还是我遗漏了什么?

最佳答案

这可能取决于您的 GPU 的 float 分辨率(应该是 Adreno 203?)。

大多数情况下,它取决于驱动程序对 float 执行的优化,当应用中等精度时,该优化(据我所知)会去除 float 的部分尾数(希望说得好)。

尝试在着色器中包含“precision highp float”。如果您的情况是上述情况,应该可以解决问题。

我希望能以某种方式提供帮助。

毛里齐奥

关于opengl-es - 着色器 MAD 优化和精度问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22802778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com