首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >eglSwapBuffers突然需要更长的时间才能完成

eglSwapBuffers突然需要更长的时间才能完成
EN

Stack Overflow用户
提问于 2011-07-30 00:45:52
回答 3查看 2.3K关注 0票数 4

今天我发现我的opengles程序帧时间有时会因为未知的原因而增加,通常是16ms,但有时需要33ms才能完成一帧。经过几个小时的分析和研究,我发现了原因:帧时间增加是因为'eglSwapBuffers‘花费的时间比平时长得多。通常在'eglSwapBuffers‘上花费的时间不到10毫秒,但有时需要大约26毫秒。

场景是静态的,所以帧时间应该是稳定的?

有没有人知道原因,请帮帮忙,我该怎么做才能让我的帧时间稳定?

EN

回答 3

Stack Overflow用户

发布于 2015-05-26 14:00:17

different thread中有一个答案,它对我解决这个问题帮助很大。

这种行为通常是由窗口和表面像素格式不匹配引起的,例如。16位(RGB565)与32位。

票数 2
EN

Stack Overflow用户

发布于 2012-02-22 18:09:01

我也遇到了这样的问题。

我发现如果eglsurface的窗口大小调整得更大,eglSwapbuffer花费的时间会变得非常长(大约是正常状态的2倍)。

票数 0
EN

Stack Overflow用户

发布于 2018-03-08 05:26:07

在我的例子中,它被证明是MSAA。使用4xMSAA,导致我的eglSwapBuffers()达到30毫秒。

我不得不从我的配置中删除两行,然后返回到2ms交换。

代码语言:javascript
运行
复制
    const EGLint attribs[] = {
            EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
            EGL_SURFACE_TYPE, EGL_WINDOW_BIT,
            EGL_DEPTH_SIZE, 16,
            EGL_BLUE_SIZE, 8,
            EGL_GREEN_SIZE, 8,
            EGL_RED_SIZE, 8,
//              EGL_SAMPLE_BUFFERS, 1,
//              EGL_SAMPLES, 4,
            EGL_NONE
    };
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6876363

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档