android studio | openGL es 3.0增强现实(AR)开发 (5) GLSurfaceView浅解

版权声明:原创文章,未经博主允许不得转载,欢迎加入AR/VR开发群:548077040。 https://blog.csdn.net/yywan1314520/article/details/52144656

1.什么是EGL?

EGL 是 OpenGL ES(嵌入式)和底层 Native 平台视窗系统之间的接口。EGL API 是独立于OpenGL ES各版本标准的独立API ,其主要作用是为OpenGL指令创建 Context 、绘制目标Surface 、配置Framebuffer属性、Swap提交绘制结果等。此外,EGL为GPU厂商和OS窗口系统之间提供了一个标准配置接口,下面是一个EGL布局图。


这里写图片描述


2.什么是surface?如何理解

Handle onto a raw buffer that is being managed by the screen compositor。surface对应了一块屏幕缓冲区,每个窗口对应一个surface,而每个Activity都会持有一个窗口,所以,我们通常在Activity里设置的view(通过setContentView),从java抽象上看其最终的绘制目标就是在Surface上。

3.什么是GLSurfaceView?

GLSurfaceView是一个视图类,继承至SurfaceView,它内嵌的surface专门负责OpenGL渲染,是OpenGL ES 与 View系统之间建立的桥梁。SurfaceView和View最本质的区别在于,surfaceView是在一个新起的单独线程中可以重新绘制画面而View必须在UI的主线程中更新画面。

4.一般的GLSurfaceView的使用步骤

初始化GLSurfaceView –> 定制android.View.surface –>选择EGL配置 –> 调式行为 –> 设置渲染器 –>选择渲染器。

5.surfaceView 和 GLSurfaceView分别是2D和3D的图形的画布。

6.什么是渲染管线?

渲染管线也称渲染流水线,一般由GPU内部的处理图形信号的并行处理单元组成。渲染管线就是指一系列的绘制过程,这些过程输入的是待渲染的3D物体的相关描述信息,经过这个渲染管线输出的就是一帧想要的图像。

猜你喜欢

转载自blog.csdn.net/yywan1314520/article/details/52144656
今日推荐