Three.js开发指南-(原书第2版)

本书特色

[

本书通过大量的交互案例和示例代码介绍了Three.js提供的各种API,让读者不需要了解很难编程的WebGL的底层细节及复杂的着色语言,只需大致了解JavaScript及HTML,就能轻松地在浏览器中创建二维和三维应用及图形。本书共12章,涉及以下内容:使用Three.js创建三维场景,构建场景的基本组件,Three.js中的光源、材质、几何体以及粒子、精灵和点云,创建和加载网格、几何体,创建动画和移动摄像机,加载和使用纹理,自定义着色器和后期处理,在场景中添加物理效果和声音等。

]

目录

目  录 Contents前言第1章 使用Three. js创建你的**个三维场景11.1 准备工作41.2 获取源码51.2.1 通过Git获取代码仓库51.2.2 下载并解压缩档案文件51.2.3 测试示例61.3 搭建HTML框架91.4 渲染并查看三维对象101.5 添加材质、光源和阴影效果141.6 让你的场景动起来161.6.1 引入requestAnimationFrame()方法161.6.2 旋转立方体171.6.3 弹跳球181.7 使用dat.GUI简化试验流程191.8 场景对浏览器的自适应211.9 总结22第2章 构建Three.js场景的基本组件232.1 创建场景232.1.1 场景的基本功能242.1.2 给场景添加雾化效果292.1.3 使用overrideMaterial属性302.2 几何体和网格312.2.1 几何体的属性和方法312.2.2 网格对象的属性和方法362.3 选择合适的摄像机402.3.1 正交投影摄像机和透视投影摄像机402.3.2 将摄像机聚焦在指定点上442.4 总结45第3章 学习使用Three.js中的光源463.1 Three.js中不同种类的光源463.2 基础光源473.2.1 THREE.AmbientLight473.2.2 THREE.PointLight513.2.3 THREE.SpotLight543.2.4 THREE.DirectionalLight583.3 特殊光源603.3.1 THREE.HemisphereLight603.3.2 THREE.AreaLight613.3.3 镜头光晕643.4 总结66第4章 使用Three.js的材质674.1 理解材质的共有属性684.1.1 基础属性684.1.2 融合属性694.1.3 高级属性704.2 从简单的网格材质开始704.2.1 THREE.MeshBasicMaterial714.2.2 THREE.MeshDepthMaterial734.2.3 联合材质754.2.4 THREE.MeshNormalMaterial764.2.5 THREE.MeshFaceMaterial784.3 高级材质814.3.1 THREE.MeshLambertMaterial814.3.2 THREE.MeshPhongMaterial824.3.3 用THREE.ShaderMaterial创建自己的着色器834.4 线性几何体的材质894.4.1 THREE.LineBasicMaterial894.4.2 THREE.LineDashedMaterial914.5 总结92第5章 学习使用几何体935.1 THREE.js提供的基础几何体945.1.1 二维几何体945.1.2 三维几何体1025.2 总结112第6章 高级几何体和二元操作1136.1 THREE.ConvexGeometry1136.2 THREE.LatheGeometry1156.3 通过拉伸创建几何体1166.3.1 THREE.ExtrudeGeometry1176.3.2 THREE.TubeGeometry1196.3.3 从SVG拉伸1206.3.4 THREE.ParametricGeometry1226.4 创建三维文本1246.4.1 渲染文本1246.4.2 添加自定义字体1266.5 使用二元操作组合网格1276.5.1 subtract函数1296.5.2 intersect函数1326.5.3 union函数1336.6 总结134第7章 粒子、精灵和点云1357.1 理解粒子1357.2 粒子、THREE.PointCloud和THREE.PointCloudMaterial1387.3 使用HTML5画布样式化粒子1407.3.1 在THREE.CanvasRenderer中使用HTML5画布1407.3.2 在WebGLRenderer中使用HTML5画布1427.4 使用纹理样式化粒子1447.5 使用精灵贴图1497.6 从高级几何体创建THREE.Point Cloud1537.7 总结155第8章 创建、加载高级网格和几何体1568.1 几何体组合与合并1568.1.1 对象组合1568.1.2 将多个网格合并成一个网格1588.1.3 从外部资源中加载几何体1608.1.4 以Three.js的JSON格式保存和加载1618.1.5 使用Blender1658.1.6 导入三维格式文件1698.2 总结179第9章 创建动画和移动摄像机1809.1 基础动画1809.1.1 简单动画1819.1.2 选择对象1829.1.3 使用Tween.js实现动画1849.2 使用摄像机1869.2.1 轨迹球控制器1879.2.2 飞行控制器1899.2.3 翻滚控制器1909.2.4 **视角控制器1919.2.5 轨道控制器1929.3 变形动画和骨骼动画1939.3.1 用变形目标创建动画1959.3.2 用骨骼和蒙皮创建动画1989.4 使用外部模型创建动画2009.4.1 使用Blender创建骨骼动画2019.4.2 从Collada模型加载动画2039.4.3 从雷神之锤模型中加载动画2049.5 总结205第10章 加载和使用纹理20610.1 将纹理应用于材质20610.1.1 加载纹理并应用到网格20610.1.2 使用凹凸贴图创建褶皱21010.1.3 使用法向贴图创建更加细致的凹凸和褶皱21110.1.4 使用光照贴图创建阴影效果21210.1.5 使用环境贴图创建反光效果21410.1.6 高光贴图21810.2 纹理的高级用途22010.2.1 自定义UV映射22010.2.2 重复纹理22210.2.3 在画布上绘制图案并作为纹理22410.2.4 将视频输出作为纹理22710.3 总结229第11章 自定义着色器和后期处理23011.1 配置Three.js以进行后期处理23011.2 后期处理通道23311.2.1 简单后期处理通道23311.2.2 使用掩码的高级效果组合器23911.2.3 使用THREE.ShaderPass自定义效果24211.3 创建自定义后期处理着色器24811.3.1 自定义灰度图着色器24811.3.2 自定义位着色器25111.4 总结253第12章 在场景中添加物理效果和声音25412.1 创建基本的Three.js场景25412.2 材质属性25912.3 基础图形26012.

封面

Three.js开发指南-(原书第2版)

书名:Three.js开发指南-(原书第2版)

作者:乔斯.德克森

页数:278

定价:¥69.0

出版社:机械工业出版社

出版日期:2017-06-01

ISBN:9787111570134

PDF电子书大小:75MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注