- openGL:
openGL 是一个与硬件无关,跨平台(wins/linux/android/mac/ios)的图形编程工具-→画笔。
openGL是一个跨平台的操作GPU的API,但openGL需要本地视窗系统进行交互,这就需要一个中间控制层,EGL就是链接openGL ES 和本地窗口的系统的接口,引入EGL就是为了屏蔽不同平台上的区别。
openGL ES是针对手机/PDA/游戏主机的设计的openGL API的子集。
- GLSufaceView:
- 继承于Surfaceview,他内嵌的surface专门负责openGL渲染
- 管理surface与EGL
- 允许自定义渲染器(render)
- 让渲染器在独立的线程里运行(GL线程),和UI线程分离
- 支持按需渲染(on-demand)和连续渲染(continuous)
- 配置GLSufaceView
- 设置版本;
- 创建render
- 设置回调;
- 刷新模式:手动刷新&自动刷新
- openGL绘制流程
openGL是以三角形为单元画图,将三角形三点坐标告知着色器,然后光栅化三角形内的每个像素点,确定形状后,然后给每个像素点上色
- Shader着色器:
- 顶点着色器:处理顶点,确定形状的小程序
- 片元着色器:上颜色贴图的小程序
- openGL坐标系
Android openGl开发详解(一)——绘制简单图形_aserbao的博客-CSDN博客_androidopengl-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------