-
作者:
[美] Jos Dirksen,李鹏程
-
出版社:
机械工业出版社
-
ISBN:
9787111488323
-
出版时间:
2015-03
-
版次:
1
-
装帧:
平装
-
开本:
16开
-
纸张:
胶版纸
-
作者:
[美] Jos Dirksen,李鹏程
-
出版社:
机械工业出版社
-
ISBN:
9787111488323
-
出版时间:
2015-03
-
版次:
1
-
装帧:
平装
售价
¥
659.00
定价
¥59.00
品相
九五品
上书时间2025-07-06
卖家超过10天未登录
-
-
商品描述:
-
基本信息
书名:Three js开发指南
定价:59.00元
作者:[美] Jos Dirksen,李鹏程
出版社:机械工业出版社
出版日期:2015-03-01
ISBN:9787111488323
字数:
页码:
版次:1
装帧:平装
开本:16开
商品重量:
编辑推荐
《Three.js开发指南》全面讲解Three.js开发的实用指南,循序渐进讲解Three.js的各种功能 通过大量交互式示例,深入探索使用开源的Three.js库创建绚丽三维图形的实用方法和技巧
内容提要
随着HTML 5标准的颁布,以及流行浏览器的日益强大,直接在浏览器中展示三维图形和动画已经变得越来越容易,也越来越受关注。但是三维图形和动画本身比较复杂,不仅需要有丰富的数学、图形学等方面的知识,还需要了解材质、贴图等各种创建三维场景所的要素。另外,直接使用WebGL在浏览器中创建三维图形和动画也非常繁琐,它所提供的各种接口尽管非常丰富且强大,但对于用户来说未免过于复杂了。 Three.js的出现则地帮助人们解决了这个矛盾。Three.js将WebGL的强大功能融汇其中,同时又非常易于使用,即便用户对其中的原理不甚了解,也能借助Three.js创建出绚丽多姿的三维场景和动画。 《Three.js开发指南》先从基本概念和Three.js的基本模块讲起,然后伴随着大量的示例和代码,逐步扩展到更多的主题,循序渐进地讲解Three.js的各种功能,帮助读者充分利用WebGL和现代浏览器的潜能,直接在浏览器中创建动态的华丽场景 《Three.js开发指南》通过大量的示例和代码,以互动的方式向读者展示Three.js的各种功能。 《Three.js开发指南》共12章:章讲述使用Three.js库的基本步骤;第2章讲解Three.js库使用过程中所要了解的各种基础组件,包括光源、网格、几何体、材质和相机等;第3章通过具体示例讲解场景中使用的各种光源;第4章讨论Three.js库中可以应用于网格的各种材质,并通过互动示例让读者试用这些材质;第5章讲解Three.js中几何体的创建和设置;第6章展示如何设置、使用Three.js库中的高级几何体,例如凸面体和扫描体;第7章讲解如何使用Three.js库中的粒子系统;第8章展示如何从外部导入网格和几何体;第9章探索各种动画效果,使场景活动起来;0章深入讲解材质的细节,包括如何控制材质,以及如何将HTML 5视频的输出和HTML 5画布中的元素作为纹理;1章探索如何使用Three.js库来对已经渲染过的场景进行后期处理;2章讲解如何在Three.js的场景中添加物理效果。
目录
前 言致 谢第1章用Three.js创建你的个三维场景1.1 使用Three.js的前提条件1.2 获取源代码1.2.1 用Git克隆代码仓库1.2.2 下载并解压压缩包1.2.3 测试示例1.3 创建HTML页面框架1.4 渲染并展示三维对象1.5 添加材质、灯光和阴影1.6 用动画扩展你的场景1.6.1 引入requestAnimation-Frame()方法1.6.2 转动方块1.6.3 弹跳球1.7 使用dat.GUI库简化试验1.8 使用ASCII效果1.9 总结第2章使用构建Three.js场景的基本组件2.1 创建场景2.1.1 场景的基本功能2.1.2 在场景中添加雾化效果2.1.3 使用材质覆盖属性2.2 使用几何和网格对象2.2.1 几何对象的属性和函数2.2.2 网格对象的函数和属性2.3 选择合适的相机2.3.1 正投影相机和透视相机2.3.2 让相机在指定点上聚焦2.4 总结第3章使用Three.js里的各种光源3.1 探索Three.js库提供的光源3.2 学习基础光源3.2.1 AmbientLight-影响整个场景的光源3.2.2 PointLight-照射所有方向的光源3.2.3 SpotLight-具有锥形效果的光源3.2.4 DirectinalLight-模拟远处类似太阳的光源3.2.5 使用特殊光源生成高级光照效果3.3 总结第4章使用Three.js的材质4.1 理解共有属性4.1.1 基础属性4.1.2 融合属性4.1.3 高级属性4.2 从简单的网格材质(基础、深度和面)开始4.2.1 简单表面的MeshBasic-Material4.2.2 基于深度着色的MeshDepthMaterial4.2.3 联合材质4.2.4 计算法向颜色的MeshNormalMaterial4.2.5 为每个面指定材质的MeshFaceMaterial4.3 学习高级材质4.3.1 用于暗淡、不光亮表面的MeshLambertMaterial4.3.2 用于光亮表面的MeshPhongMaterial4.3.3 用ShaderMaterial创建自己的着色器4.4 线段几何体的材质4.4.1 LineBasicMaterial4.4.2 LineDashedMaterial4.5 总结第5章学习使用几何体5.1 Three.js提供的基础几何体5.1.1 二维几何体5.1.2 三维几何体5.2 总结第6章使用高级几何体和二元操作6.1 ConvexGeometry6.2 LatheGeometry6.3 通过拉伸创建几何体6.3.1 ExtrudeGeometry6.3.2 TubeGeometry6.3.3 从SVG拉伸6.3.4 ParametricGeometry6.4 创建三维文本6.4.1 渲染文本6.4.2 添加自定义字体6.5 使用二元操作组合网格6.5.1 subtract函数6.5.2 intersect函数6.5.3 union函数6.6 总结第7章粒子和粒子系统7.1 理解粒子7.2 粒子、粒子系统和BasicParticleMaterial7.3 使用HTML5画布格式化粒子7.3.1 在CanvasRenderer类里使用HTML5画布7.3.2 在WebGLRenderer中使用HTML5画布7.4 使用纹理格式化粒子7.5 从高级几何体中创建粒子系统7.6 总结第8章创建、加载高级网格和几何体8.1 几何体组合和合并8.1.1 对象组合8.1.2 将多个网格合并成一个网格8.2 从外部资源中加载几何体8.3 以Three.js的JSON格式保存和加载8.3.1 保存和加载几何体8.3.2 保存和加载场景8.4 使用Blender8.4.1 在Blender中安装Three.js导出器8.4.2 在Blender里加载和导出模型8.5 导入三维格式文件8.5.1 OBJ和MTL格式8.5.2 加载Collada模型8.5.3 加载STL、CTM和VTK模型8.5.4 展示蛋白质数据银行中的蛋白质8.5.5 从PLY模型中创建粒子系统8.6 总结第9章创建动画和移动相机9.1 基础动画9.1.1简单动画9.1.2 选择对象9.1.3 用Tween.js做动画9.2 使用相机9.2.1 轨迹球控件9.2.2 飞行控件9.2.3 翻滚控件9.2.4 人称控件9.2.5 轨道控件9.2.6 路径控件9.3 变形动画和骨骼动画9.3.1 用变形目标制作动画9.3.2用骨骼和蒙皮制作动画9.4使用外部模型创建动画9.4.1 用Blender创建骨骼动画9.4.2从Collada模型中加载动画9.4.3从雷神之锤模型中加载动画9.5总结第10章加载和使用纹理10.1在材质中使用纹理10.1.1加载纹理并应用到网格10.1.2使用凹凸贴图创建皱纹10.1.3使用法向贴图创建更加细致的凹凸和皱纹10.1.4使用光照贴图创建假阴影10.1.5用环境贴图创建虚假的反光效果10.1.6高光贴图10.2纹理的高级用途10.2.1定制UV映射10.2.2重复映射10.2.3在画布上绘制图案并作为纹理10.3总结第11章定制着色器和渲染后期处理11.1设置后期处理11.1.1创建EffectComposer对象11.2后期处理通道11.2.1简单后期处理通道11.2.2 使用掩膜的高级效果组合器11.2.3 用ShaderPass定制效果11.3 创建自定义的后期处理着色器11.3.1 定制灰度图着色器11.3.2 定制位着色器11.4 总结第12章用Physijs在场景中添加物理效果12.1 创建可用Physijs的基本Three.js场景12.2 材质属性12.3 基础图形12.4 使用约束限制对象移动12.4.1 用PointConstraint限制两点间的移动12.4.2 用HingeConstraint创建类似门的约束12.4.3 用SliderConstraint将移动限制到一个轴12.4.4 用ConeTwistConstraint创建类似球销的约束12.4.5 用DOFConstraint实现细节的控制12.5 总结
作者介绍
Jos Dirksen,资深软件工程师和架构师,现任职于Malmberg公司,在后台技术(如Java和Scala)和前端开发(如HTML5、CSS和JavaScript)等技术领域有丰富的从业经验。除了对前端的JavaScript和HTML5等技术充满兴趣,Jos也喜欢研究使用REST和传统的网络服务技术开发后台服务。 李鹏程,SAP中国研究院高级软件工程师。早年他曾在AutoDesk公司从事三维设计软件的开发工作,后来因缘际会来到SAP,转行做ERP。随着云热潮的来临,传统的ERP也逐渐转向云端,因此也伴随着这股潮流学习了很多网络前端、后端方面的开发。
序言
孔网啦啦啦啦啦纺织女工火锅店第三课
开播时间:09月02日 10:30
即将开播,去预约

直播中,去观看