内容简介
第1章 Hello OpenGL
1.1 从这里开始认识
1.2 OpenGL是什么
1.3 如何使用OpenGL
1.4 Hello OpenGL
1.5 辅助工具
1.6 不含位置属性的顶点
1.7 总结
1.8 问题
第2章 纹理
2.1 二维纹理
2.2 其他类型的纹理
2.3 多个纹理
2.4 多个渲染方法
2.5 总结
2.6 问题
第3章 空间和矩阵
3.1 如何理解矩阵
3.2 空间和矩阵的关系
3.3 Pipeline中的空间
3.4 实例化渲染
3.5 总结
3.6 问题
第4章 几何着色器
4.1 介绍
4.2 示例:渲染法线
4.3 总结
4.4 问题
第5章 光照
5.1 Blinn-Phong光照模型
5.2 光源
5.3 反射光
5.4 Blinn-Phong算法
5.5 同时使用多个光源
5.6 阴影
5.7 凹凸映射
5.8 噪声
5.9 总结
5.10 问题
第6章 帧缓存
6.1 名词术语
6.2 附着点
6.3 将Texture附着到Frameb uffer
6.4 附着Renderbuffer
6.5 示例:Render to Texture
6.6 总结
6.7 问题
第7章 阴影
7.1 Shadow Mapping
7.2 Shadow Volume
7.3 模板缓存的初始化
7.4 多光源下的阴影
7.5 总结
7.6 问题
第8章 拾取
8.1 基础
8.2 在DrawArraysCmd命令下的拾取
8.3 在DrawElementsCmd命令下的拾取
8.4 拖拽顶点
8.5 总结
8.6 问题
第9章 文字
9.1 固定尺寸且始终面向Camera
9.2 字形信息
9.3 三维世界的文字
9.4 总结
9.5 问题
第10章 简单的用户界面
10.1 指定区域的贴图
10.2 控件的布局机制
10.3 控件的事件机制
10.4 CtrlImage
10.5 CtrlLabel
10.6 CtrlButton
10.7 总结
10.8 问题
第11章 轨迹球
11.1 轨迹球
11.2 使用
11.3 设计
11.4 四元数
11.5 总结
11.6 问题
第12章 体渲染
12.1 什么是体渲染
12.2 静态切片
12.3 动态切片
12.4 Raycasting
12.5 总结
12.6 问题
第13章 半透明渲染
13.1 跳跃着色法
13.2 与顺序无关的半透明渲染
13.3 Front to Back Peeling
13.4 总结
13.5 问题
第14章 Transform Feedback Object
14.1 Transform Feedback如何工作
14.2 使用Transform Feedback Object
14.3 轮流更新
14.4 粒子系统
14.5 总结
14.6 问题
第15章 Compute Shader
15.1 Compute Shader简介
15.2 图像处理
15.3 粒子系统
15.4 总结
15.5 问题
附录
附录A Github入门
附录B C#和面向对象入门
附录C 解析简单的wavefront(*.obj)文件格式
附录D 自制体数据的2种方法