在 EGL 上渲染时的 OpenGL 撕裂效果
我有一些 Qt 应用程序在 ARM 板上的 EGL 实现提供的表面上使用 OpenGL 进行渲染。我在渲染过程中遇到了某种撕裂。
通过阅读,我发现这可能是与vsync相关的问题,所以我使用了EGL调用eglSwapInterval(eglDisplay, 1),但仍然存在撕裂。这个调用足以消除撕裂吗?该调用是否应该完全消除这种影响?是否有可能残留一些撕裂?
I have some Qt applications rendered using OpenGL on surfaces provided by an EGL implementation on an ARM board. I'm experiencing some kind of tearing in rendering.
By reading around, I found out it may be a problem related to vsync, so I used the EGL call eglSwapInterval(eglDisplay, 1), but still tearing persist. Is that call sufficient to remove tearing? Should that call completely remove such an effect? Is it possible some tearing remains?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
FB_MULTI_BUFFER=3
环境变量将在具有某些最新 LTIB 版本的 Freescale i.MX 6 (Sabrelite) 板上启用多缓冲。FB_MULTI_BUFFER=3
environment variable will enable the multi buffering on Freescale i.MX 6 (Sabrelite) board with some recent LTIB build.在阅读了 EGL 实现的源代码后,我发现没有eglSwapInterval 函数的实现。需要具体实施。之后就不再流泪了。
After reading the sources of the EGL implementation I've been given I discovered there was no implementation for the eglSwapInterval function. A specific implementation was needed. After that no more tearing.