菜鸟教程小白 发表于 2022-12-11 17:31:39

ios - iOS 10 中 A7 设备上的 OpenGL 错误


                                            <p><p>更新到 iOS 10 后,我的图像处理应用在配备 A7 芯片的设备(iPhone 5s 和 iPad Mini 2 测试)上的行为非常奇怪:</p>

<p>渲染需要很长时间并且会产生损坏的结果。 Instruments 揭示了一些 <code>glDrawElements</code> 调用返回 <code>GL_INVALID_OPERATION</code>。不过,我无法找出原因。</p>

<p>相同的代码在较新的设备(A8 和更好的设备)和 iOS 9 的所有设备上运行良好。Apple 是否改变了我不知道的事情?</p>

<p>更多背景信息:</p>

<ul>
<li>我部分使用 <code>GL_HALF_FLOAT_OES</code> 类型的纹理</li>
<li>我使用 <code>EXT_color_buffer_half_float</code> 扩展来渲染这些纹理</li>
<li>我使用 <code>EXT_shader_framebuffer_fetch</code> 扩展来就地处理一些过滤器中的像素</li>
</ul></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>事实证明,我只是在一些着色器(例如 <code>gl_FragColor.rg = vec2(1.0, 0.0);</code>)中部分分配了 <code>gl_FragColor</code>,这导致iOS 10 中的错误行为。不过,可能仅与 <code>GL_HALF_FLOAT_OES</code> 类型的渲染目标结合使用。</p>

<p>当我总是分配完整的向量时(即使其他部分未使用......),它就像一个魅力。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - iOS 10 中 A7 设备上的 OpenGL 错误,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/39534245/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/39534245/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - iOS 10 中 A7 设备上的 OpenGL 错误