首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓系统中APP与surfaceflinger的OpenGL上下文

安卓系统中APP与surfaceflinger的OpenGL上下文
EN

Stack Overflow用户
提问于 2015-04-28 03:41:10
回答 1查看 1K关注 0票数 0

据我所知,到目前为止,表面提供者表面,应用程序渲染,然后合成所有的表面到最后的屏幕。(如有任何错误,请指出)。

第一个问题:由surfaceflinger创建的表面是全局可用的,可供所有进程使用。(表面的内存是否在GPU内存中?)

虽然我在googled中搜索到了不可能在进程之间共享openGL上下文(这里我指的是APP进程和表面处理)。我不确定表面是否会用到GPU内存?

如果我的第一个问题的答案是肯定的,那么当应用程序呈现到表面时,是否有任何openGL资源共享?这些碎片,包括表面记忆,是如何运作的呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-28 05:17:44

安卓Surface和EGL Surface是有区别的。它们是密切相关的,但不是一回事。

eglCreateWindowSurface()等方法创建的EGL曲面可以与EGL上下文相关联,并用作呈现的目标。它们不能在进程之间共享。

Android 曲面只是BufferQueue对象的包装器,它提供了一种在系统中移动图形缓冲区的方法。应用程序呈现的缓冲区可以在应用程序和SurfaceFlinger之间传递,但不传递任何EGL状态。所有SurfaceFlinger得到的都是成品。

该系统在图形体系结构文档中作了较为详细的描述。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29909877

复制
相关文章

相似问题

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