Android OpenGL ES 1.基础概念

作者: Benhero | 来源:发表于2018-08-31 17:13 被阅读13次

    基本图形

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

    2.0版本渲染流程

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

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

    开发重点

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

    OpenGL ES开发重点

    基本概念

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

    OpenGL顶点坐标系

    GL顶点坐标系

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


    顶点坐标系 - 变形

    参考

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

    GitHub代码工程

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

    课程目录

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

    相关文章

      网友评论

        本文标题:Android OpenGL ES 1.基础概念

        本文链接:https://www.haomeiwen.com/subject/yghewftx.html