【问题标题】:WebGL texture red and flickering on Apple devicesApple 设备上的 WebGL 纹理红色和闪烁
【发布时间】:2014-12-04 23:13:51
【问题描述】:

我目前正在编写一个简单的 WebGL 应用程序,其中多个纹理相互混合。

该应用程序在 Windows 上的 Chrome、Firefox 和 IE 中运行良好,也适用于 Android 手机。

然而,在 Apple 设备上,纹理在任何浏览器中都是红色且闪烁。我在 iPhone 上的 Safari 或 MacBook 上的 Chrome 和 Firefox 上对此进行了测试。

例如,期望的结果是木质纹理:

但是,在 Apple 设备上,会显示:

WebGL 没有错误和警告。这里的问题或暗示可能是什么?

【问题讨论】:

    标签: ios iphone opengl-es webgl flicker


    【解决方案1】:

    在这种情况下,解决方案是初始化片段着色器中使用的所有变量,但没有正确完成。

    【讨论】:

    • 你能说得更具体点吗?其他浏览器如何处理未初始化的变量?
    • 所以问题是着色器中应该初始化为零的变量没有初始化。在它工作的浏览器中(参见原始帖子),该变量默认为零。在苹果设备上,价值是别的东西,这导致了这个问题。手动初始化着色器代码中的所有变量修复了问题。
    猜你喜欢
    • 2016-07-05
    • 1970-01-01
    • 2022-06-15
    • 1970-01-01
    • 2013-07-04
    • 1970-01-01
    • 2015-02-09
    • 2020-11-07
    • 2013-02-11
    相关资源
    最近更新 更多