图灵程序设计丛书 HTML5与WEBGL编程PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:(美)TONY PARISI著;潘征译
- 出 版 社:北京:人民邮电出版社
- 出版年份:2016
- ISBN:7115421333
- 页数:313 页
第一部分 基础知识 2
第1章 绪论 2
1.1 HTML5:新型的视觉媒介 4
1.1.1 浏览器平台 4
1.1.2 浏览器支持情况 6
1.2 3D图形的基础知识 6
1.2.1 什么是3D 6
1.2.2 3D坐标系 7
1.2.3 网格、多边形与顶点 8
1.2.4 材质、纹理与光源 9
1.2.5 变换与矩阵 9
1.2.6 相机、透视、视口与投影 10
1.2.7 着色器 11
第2章 WebGL:实时3D渲染 13
2.1 WebGL基础 14
2.2 WebGL API 15
2.3 WebGL应用剖析 16
2.4 一个简单的WebGL示例 16
2.4.1 Canvas元素和WebGL绘图上下文 17
2.4.2 视口 18
2.4.3 缓冲、缓冲数组和类型化数组 18
2.4.4 矩阵 19
2.4.5 着色器 20
2.4.6 绘制图元 22
2.5 创建3D几何体 23
2.6 添加动画 27
2.7 使用纹理映射 28
2.8 小结 34
第3章 Three.js——款JavaScript 3D引擎 35
3.1 使用Three.js创建的代表性项目 35
3.2 Three.js概览 38
3.2.1 初始化Three.js 40
3.2.2 Three.js工程结构 40
3.3 一个简单的Three.js程序 41
3.3.1 创建渲染器 43
3.3.2 创建场景 43
3.3.3 运行循环的实现 45
3.3.4 为场景添加光照 46
3.4 小结 48
第4章 Three.js中的图形和渲染 49
4.1 几何图形和网格 49
4.1.1 预置的几何形状类型 49
4.1.2 路径、形状和挤出 50
4.1.3 几何形状基础类 52
4.1.4 用于优化网格渲染的BufferGeometry 55
4.1.5 从建模软件包中导入网格数据 56
4.2 场景图和空间变换的层级结构 57
4.2.1 利用场景图来管理复杂场景 57
4.2.2 Three.js中的场景图 57
4.2.3 平移、旋转和缩放的表示 61
4.3 材质 61
4.3.1 标准网格材质 61
4.3.2 使用多重纹理增添逼真效果 63
4.4 光源 67
4.5 阴影 69
4.6 着色器 73
4.6.1 ShaderMaterial类:编写你自己的着色器代码 74
4.6.2 在Three.js中使用GLSL着色器代码 75
4.7 渲染 79
4.7.1 后处理和多道渲染 79
4.7.2 延迟渲染 80
4.8 小结 80
第5章 3D动画 81
5.1 使用requestAnimationFrame()来驱动动画 82
5.1.1 在你的应用中使用requestAnimationFrame() 83
5.1.2 requestAnimationFrame()和性能 84
5.1.3 基于帧的动画和基于时间的动画 85
5.2 使用程序更新属性的方式来构建动画 85
5.3 使用补间来进行动画过渡 87
5.3.1 插值 87
5.3.2 Tween.js库 88
5.3.3 缓动 90
5.4 使用关键帧来实现复杂动画 91
5.4.1 Keyframe.js——一个简单的帧动画通用库 92
5.4.2 使用关键帧创建关节动画 94
5.5 使用曲线和路径创建平滑自然的运动 96
5.6 使用变形目标来创建人物和面部动画 99
5.7 使用蒙皮来构建角色动画 100
5.8 使用着色器来进行动画 104
5.9 小结 109
第6章 CSS3:高级页面效果 110
6.1 CSS变换 112
6.1.1 使用3D变换 113
6.1.2 添加透视 115
6.1.3 创建变换层级 117
6.1.4 控制背面渲染 119
6.1.5 CSS变换属性汇总 122
6.2 CSS过渡 122
6.3 CSS动画 127
6.4 挑战CSS的极限 130
6.4.1 渲染3D物体 130
6.4.2 渲染3D环境 132
6.4.3 使用CSS自定义滤镜来实现高级着色器效果 134
6.4.4 用Three.js来渲染CSS 3D 135
6.5 小结 135
第7章 Canvas:通用2D绘图 137
7.1 Canvas基础 137
7.1.1 Canvas元素和2D绘图上下文 138
7.1.2 Canvas API的功能 139
7.2 使用Canvas API来渲染3 D 144
7.3 基于Canvas渲染的3D库 147
7.3.1 K3D 147
7.3.2 Three.js的Canvas 渲染 148
7.4 小结 153
第二部分 应用开发技术 156
第8章 3D内容制作流程 156
8.1 3D内容创建过程 156
8.1.1 建模 157
8.1.2 纹理映射 157
8.1.3 动画 158
8.1.4 技术美工 159
8.2 3D建模和动画工具 160
8.2.1 传统3D软件 160
8.2.2 基于浏览器的集成环境 164
8.2.3 D内容仓库和现成素材 167
8.3 3D文件格式 168
8.3.1 模型格式 168
8.3.2 动画格式 170
8.3.3 全功能的场景格式 171
8.4 加载3D内容到WebGL应用中 178
8.4.1 Three.js JSON格式 179
8.4.2 Three.js的二进制格式 184
8.4.3 使用Three.js来加载COLLADA场景 185
8.4.4 使用Three.js来加载gITF场景 188
8.5 小结 189
第9章 3D引擎和框架 190
9.1 3D框架概念 191
9.1.1 什么是框架 191
9.1.2 WebGL框架需求 192
9.2 WebGL框架概况 194
9.2.1 游戏引擎 194
9.2.2 展示框架 196
9.3 Vizi:一个基于组件的用于可视化Web应用的框架 198
9.3.1 背景和设计理念 199
9.3.2 Vizi架构 200
9.3.3 Vizi入门 201
9.3.4 一个Vizi应用示例 202
9.4 小结 207
第10章 开发一个简单的3D应用 209
10.1 设计应用 211
10.2 创建3D内容 212
10.2.1 导出Maya场景到COLLADA 213
10.2.2 将COLLADA文件转换g1TF格式 214
10.3 预览和测试3D内容 214
10.3.1 基于Vizi的预览工具 214
10.3.2 Vizi查看器类 216
10.3.3 Vizi加载类 217
10.4 将3D集成到应用中 220
10.5 开发3D行为和交互 223
10.5.1 Vizi场景图API方法:findNode()和map() 223
10.5.2 使用Vizi.FadeBehavior来动画透明度 225
10.5.3 使用Vizi.RotateBehavior来自动旋转内容 227
10.5.4 使用Vizi.Picker来实现鼠标悬停时显示信息 227
10.5.5 使用用户界面来控制动画 229
10.5.6 使用颜色选择器来改变颜色 230
10.6 小结 232
第11章 开发一个3D环境 233
11.1 创建环境素材 235
11.2 预览和测试环境 236
11.2.1 以第一人称模式预览场景 237
11.2.2 检查场景图 237
11.2.3 检查对象属性 240
11.2.4 显示边界框 242
11.2.5 预览多个对象 244
11.2.6 使用预览工具来查找场景中的其他问题 246
11.3 使用skybox创建一个3D背景 247
11.3.1 3D skybox 247
11.3.2 Vizi skybox对象 248
11.4 集成3D内容到应用中 250
11.4.1 加载和初始化场景 250
11.4.2 加载和初始化车模型 253
11.5 实现第一人称导航 255
11.5.1 相机控制器 256
11.5.2 第一人称控制器中的数学 257
11.5.3 鼠标视角 258
11.5.4 简单碰撞检测 259
11.6 使用多个相机 260
11.7 创建定时的动画过渡 262
11.8 对象行为脚本 263
11.8.1 基于Vizi.Script实现自定义组件 264
11.8.2 驾驶车的控制器脚本 264
11.9 给环境添加声音 270
11.10 渲染动态纹理 272
11.11 小结 276
第12章 开发移动3D应用 278
12.1 移动3D平台 278
12.2 为移动浏览器开发 280
12.2.1 增加触摸支持 281
12.2.2 在桌面版Chrome上调试移动功能 285
12.3 创建Web应用 287
12.3.1 Web应用开发和测试工具 287
12.3.2 打包成Web应用来发布 288
12.4 开发原生/HTML5混合应用 289
12.4.1 CocoonJS:一种为移动设备构建HTML游戏及应用的技术 290
12.4.2 使用CocoonJS组装应用 292
12.4.3 WebGL混合开发:问题 298
12.5 移动3D性能 298
12.6 小结 300
附录 资源 301
作者介绍 311
封面介绍 311
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《《走近科学》精选丛书 中国UFO悬案调查》郭之文 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《新编历史小丛书 祖逖北伐》何兹全著 2019
- 《国际经典影像诊断学丛书 消化影像诊断学 原著第3版》王振常,蒋涛,李宏军,杨正汉译;(美)迈克尔·P.费德勒 2019
- 《计算机辅助平面设计》吴轶博主编 2019
- 《本草古籍辑注丛书 第1辑 《食疗本草》辑校》(唐)孟诜撰;(唐)张鼎增补;尚志钧辑校 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019