Android OpenGL ES 1.基础概念

基本图形

从上面的渲染流程我们可以知道,GL中是先绘制好图形的轮廓,再将颜色、图案绘制到这个轮廓上的,所以,能画什么样的图形至关重要。OpenGL ES中,只提供了3种基本图形:点、线、三角形。而其他我们熟知的图形,都是基于这3种基本图形处理拼接合成的。

2.0版本渲染流程

OpenGL展示到屏幕上的流程
整体上,我将7个流程步骤拆解成了3大部分:

  1. 确定顶点的位置,通过这些顶点绘制出指定的图形
  2. 为图形上色,可以是纯色、渐变彩色或者是图片纹理
  3. 缓冲与展示:将上述的图形加载到帧缓冲区(FrameBuffer)中,再展示到屏幕上。
Android OpenGL ES 1.基础概念_第1张图片
渲染管道
Android OpenGL ES 1.基础概念_第2张图片
光栅化流程图

开发重点

虽然渲染流程有很多个步骤,但是我们在开发OpenGL相关内容时,重点则是在顶点着色器片段着色器将数据传递给着色器3个环节上

Android OpenGL ES 1.基础概念_第3张图片
OpenGL ES开发重点

基本概念

  • PipeLine:渲染管道,是显示芯片内部(GPU)处理图形信号相互独立的并行处理单元,也就是渲染流程。
  • Shader:着色器、渲染器,用于描述如何绘制图形图像的具体环节。分为顶点着色器片段着色器
  • GLSL : OpenGL编写着色器具体实现的编程语言,全称 OpenGL Shader Language

OpenGL顶点坐标系

Android OpenGL ES 1.基础概念_第4张图片
GL顶点坐标系

与Android中的Canvas或者屏幕坐标体系不同,GL的坐标起始位置在屏幕中心,(0,0)作为中心点,X坐标从左到右,Y坐标从下到上,在[-1,1]之间取值,再映射到屏幕上。而超出[-1,1]范围的,将不会显示在屏幕上。而无论屏幕是什么大小,什么形状,坐标范围都是不变的。如下图。


Android OpenGL ES 1.基础概念_第5张图片
顶点坐标系 - 变形

参考

见Android OpenGL ES学习资料所列举的博客、资料。

GitHub代码工程

本系列课程所有相关代码请参考我的GitHub项目GLStudio。

课程目录

本系列课程目录详见 - Android OpenGL ES教程规划

你可能感兴趣的:(Android OpenGL ES 1.基础概念)