简介
OpenGL 是跨平台的、专业的图形编程接口,而接口的实现是由厂商来完成的。
OpenGL使用这些接口绘制完成后,需要把数据渲染到屏幕上,就需要EGL来接手这部分工作。
EGL:全称Embedded Graphic Library。是 OpenGL ES 和底层 Native 平台 视窗系统之间的接口,如下图所示。
EGL介绍
EGL接口中含有3个对象,如下图所示:
其中:
-
Display(EGLDisplay) 是对实际显示设备的抽象,也就是屏幕
-
Surface(EGLSurface)是对用来存储图像的内存区域
-
FrameBuffer 的抽象,包括 Color Buffer, Stencil Buffer ,Depth Buffer
-
Context (EGLContext) 存储 OpenGL ES绘图的一些状态信息
OpenGL和EGL配合工作的大概流程:
1 EGL 获取到手机屏幕的handle,获取到手机支持的配置(RGBA8888/RGB565 之类