1、OpenGL / OpenGL ES图形API基本简介
OpenGL(Open Graphics Library),直接翻译就是“开放图形库”, 是一个跨平台、跨编程语言的编程图形程序接口,它将计算机的资源抽象成为一个个OpengGL的对象,对这些资源的操作抽象为一个个的OpenGL指令。
OpenGL ES (OpenGL for Embedded Systems) ,Embedded 翻译是“嵌入式”,针对嵌入式设计,比如手机,PDA和游戏主机等,而OpenGL则是针对的是电脑端(MAC和PC),OpenGL ES是OpenGL三维图形API的子集,去除了许多不必要和性能较低的API接口。
2、iOS开发者学习OpenGL的好处
metal是苹果2014年推出的新的图形api,用来代替OpenGL,苹果从OpenGL切换到metal用了四年的时间,之前很多项目用的是OpenGL ,且在苹果推出mental之前,封装好多好用OpenGL的API。
苹果将OpenGL切换到metal只是将苹果内核切换,比如coreAnimation(核心动画)等,但是不代表所有的iOS项目都要切换至metal,就像推出swift,但是OC一样可以用。metal和OpenGL的差距还是蛮大,所以二者都要学习。 实际项目上用处很多,如将视频解码渲染到屏幕上,地图渲染,视频滤镜使用等。
3、OpenGL专业名词
OpenGL状态机
OpenGL上下文 状态机 渲染 管线 固定管线
着色器程序shader 顶点着色器 片元着色器 glsl 光栅化:顶点数据转化为片元数据的过程