一. 走向3D渲染
2D + 透视 = 3D
1.1 了解3D
二维物体:高度,宽度
三维物体:高度,宽度,深度
1.2 3D术语
- 光栅化: 实际绘制或填充每个顶点之间的像素形成线程
- 着⾊: 沿着顶点之间改变颜⾊值,能够轻松创建光照照射到一个⽴方体的效果
- 纹理贴图: 将纹理图⽚附着到你绘图的图像上
- 混合: 颜⾊混合效果
二. 深入了解OpenGL
2.1 认识GPU 芯片
2.2 学习在Mac OS 系统下搭建OpenGL 工作环境
2.3 OpenGL 简介
- OpenGL 发展至今,已经有20余年,作为⼀个成熟并久负盛名的跨平台计算机图形应用程序接⼝规范,它被广
泛使⽤在游戏,影视,军事,航空航天,地理,医学,机械设计,以及各类科学数据可视化等领域 - OpenGL 是一种图形应⽤程序编程接口(Application Programming Interface, API).简单理解就是开发的图形库
- OpenGL 可以⽤来做什么?
- 视频,图形,图片处理
- 2D/3D 游戏引擎开发
- 科学可视化
- 医学软件开发
- CAD(计算机辅助技术)
- 虚拟实境(AR,VR)
- AI ⼈⼯智能
2.4 为什么要⽤OpenGL ?
- 思考: 难道不能直接将数据从CPU 跨到GPU 处理? 为什么要多此⼀举,出现OpenGL 这个框架?
-
数据饥饿: 从⼀块内存中将数据复制到另一块内存中, 传递速度是非常慢的,内存复制数据时, CPU和GPU 都不不能 操作数据(避免引起错误)
2.5 了解客户端/服务端的概念
2.6 OpenGL 与 OpenGL ES 的关系
OpenGL 与 OpenGL ES 的主要区别,在于OpenGL ES 主要针对嵌入式设备使⽤
2.7 着⾊器的基本认识
- 图元: 组成图像的基本单元
- OpenGL 渲染管线: 一系列有序的处理阶段的序列,用于把我们应用中的数据转化到OpenGL 生成一个最终的图像的一个过程
- GLSL: 专⻔为图形开发设计的编程语⾔
2.8 着⾊器的渲染流程
2.9 着⾊器的渲染
- 顶点着⾊器 (必要)
- 细分着⾊器 (可选)
- ⼏何着⾊器 (可选)
- ⽚元着⾊器 (必选)