封面
书名
版权
前言
目录
第1章 WebGL简介/1
1.1 WebGL——一个技术定义/2
1.23 D图形学——入门/4
1.2.13 D坐标系/4
1.2.2 网格、多边形和顶点/5
1.2.3 材质、纹理和光源/5
1.2.4 变换与矩阵/6
1.2.5 相机、透视、视口和投影/6
1.2.6 着色器/7
1.3 WebGL原生API/8
1.3.1 WebGL应用结构剖析/9
1.3.2 画布元素与绘制上下文/9
1.3.3 视口/10
1.3.4 Buffer、 ArrayBuffer和类型化数组/10
1.3.5 矩阵/11
1.3.6 着色器/12
1.3.7 绘制图元/13
1.4 本章小结/14
第2章 你的第一个WebGL程序/15
2.1 Three js——一个JavaScript 3D引擎/15
2.2 建立ThreE.j s运行环境/17
2.3 一个简单的Three js网页/17
2.4 一个真实的3D示例/20
2.4.1 为场景着色/23
2.4.2 添加纹理映射/24
2.4.3 旋转物体/25
2.4.4 循环重绘和requestAnimationFrame()/25
2.4.5 让页面贴近生活/26
2.5 本章小结/27
第3章 图形/28
3.1 SiM.js——一个轻量级的WebGL模拟框架/29
3.2 创建网格/30
3.3 使用材质、纹理和光源/34
3.3.1 光源的种类/35
3.3.2 使用多重纹理创建更具真实感的场景/37
3.3.3 纹理与透明/42
3.4 构建变换层级/42
3.5 创建自定义几何体/46
3.6 点和线的渲染/49
3.6.1 使用粒子系统绘制点/50
3.6.2 线的绘制/52
3.7 编写着色器/53
3.7.1 WebGL着色器基础/53
3.7.2 ThreE.js中的着色器/55
3.8 本章小结/60
第4章 动画/61
4.1 动画基础/61
4.1.1 帧动画/61
4.1.2 时间动画/62
4.1.3 插值与补间动画/62
4.1.4 关键帧/63
4.1.5 关节动画/64
4.1.6 蒙皮动画/64
4.1.7 目标变形动画/64
4.2 使用Tween js库来创建补间动画/65
4.2.1 创建一个基本的补间动画/66
4.2.2 带缓动效果的补间动画/68
4.3 为带关节的模型制作关键帧动画/71
4.3.1 载入模型/71
4.3.2 为模型制作动画/73
4.4 材质和光源动画/76
4.5 纹理动画/78
4.6 蒙皮动画和变形动画/80
4.7 本章小结/80
第5章 交互/81
5.1 点击检测、拾取和投影/81
ThreE.js中的点击检测/82
5.2 处理鼠标移入和点击/85
5.3 处理拖曳/88
在拖曳中使用补间动画/91
5.4 使用点击点和法线信息/91
5.5 基于相机的交互/92
5.5.1 利用镜头控制制作一个模型浏览器/93
5.5.2 场景漫游/95
5.6 本章小结/96
第6章 2D与3D的整合/98
6.1 整合动态HTML和WebGL/99
6.1.1 创建DIV元素弹出层/99
6.1.2 利用2D屏幕坐标为3D物体添加注释/103
6.1.3 为3D场景添加背景图片/104
6.2 在2D页面上插入3D浮层/105
6.3 利用2D Canvas创建动态纹理/107
6.4 使用视频作为纹理/115
6.5 渲染动态3D文字/119
6.6 WebGL中的终极整合/121
6.7 本章小结/123
第7章 实战WebGL/124
7.1 如何选择运行库和框架/124
7.2 载入3D内容/126
7.2.1 COLLADA:数字资产交换格式/126
7.2.2 ThreE.js中的JSON模型文件格式/130
7.2.3 Three j s二进制模型文件格式/134
7.2.4 压缩3D模型/135
7.2.5 ThreE.js中的JSON场景文件格式/136
7.3 创建3D内容/137
7.3.1 从Blender中导出3D内容/137
7.3.2 把OBJ文件转换为Three js JSON文件/139
7.3.3 把OBJ文件转换为Three js二进制文件/139
7.3.4 其他软件或格式的转换/139
7.4 浏览器支持度/140
7.4.1 检测浏览器的WebGL支持/141
7.4.2 在Safari中开启WebGL支持/142
7.5 处理丢失上下文事件/143
7.6 WebGL的安全性/146
7.7 本章小结/149
第8章 你的第一个WebGL游戏/150
8.1 构建游戏的各个部分/151
8.1.1 相机、角色和控制/152
8.1.2 美术设计/159
8.1.3 模型预览器/161
8.1.4 创建粒子系统/163
8.1.5 添加声音/166
8.2 万物归一/167
8.3 本章小结/180
后记/181
附录A WebGL在线资源/183