https://www.jianshu.com/p/dd800800145b
对于AndroID APP而言,基于GPU的硬件加速绘制可以分为如下几个阶段:
第一阶段:APP在UI线程构建OpenGL渲染需要的命令及数据第二阶段:cpu将数据上传(共享或者拷贝)给GPU,PC上一般有显存一说,但是ARM这种嵌入式设备内存一般是GPU、cpu共享内存第三阶段:通知GPU渲染,一般而言,真机不会阻塞等待GPU渲染结束,效率低,cpu通知结束后就返回继续执行其他任务,当然,理论上也可以阻塞执行,glFinish就能满足这样的需求(不同GPU厂商实现不同,AndroID源码自带的是软件实现的,只具有参考意义)(Fence机制辅助GPU cpu同步)第四阶段:swapBuffers,并通知SurfaceFlinger图层合成第五阶段:SurfaceFlinger开始合成图层,如果之前提交的GPU渲染任务没结束,则等待GPU渲染完成,再合成(Fence机制),合成依然是依赖GPU,不过这就是下一个任务了Surfaceflinger启动流程
https://www.huaweicloud.com/articles/cd17cf3ee32f423e022da79ef5a493a8.html
上层framework调用activity中surface创建流程AndroID系统启动
总结
以上是内存溢出为你收集整理的Android图形图像相关(二)全部内容,希望文章能够帮你解决Android图形图像相关(二)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)