迎接互联网的明天
出版信息
邹静 / 电子工业 / 2011-6 / 55.00元
内容简介
《迎接互联网的明天-玩转3D Web(附盘)》,全书共5章,第1章主要阐述了国内外空前繁荣的3D互联网技术领域,以及这些领域透射出来的潜在商机;第2章主要用当下比较流行的Flash编程语言ActionScript 3,来向大家介绍面向对象编程语言的思想概念,以及一些3D渲染技术的入门知识;第3章注重建模知识的运用,主要运用WireFusion和3ds Max来制作3D网页;第4章主要介绍3D游戏编程的初步思想,以及先进的3D呈像技术架构;第5章详细阐述了未来3D互联网所需的浏览器架构问题,以及用HTML5+WebGL技术来进行初步架构。
作者简介
邹静 网名~13y32r~,资深RIA视觉编程师,先后担任国内大型网络公司技术研发部要职,长期从事Web前端开发工作,实战经验非常丰富。曾独立完成了国内多个大型研发项目,熟悉3D互联网制作技术与跨平台3D游戏开发技术,对Vrml、WireFusion、ActionScript、PV3D、Flex、PHP、RoR等Web开发技术也有较深入的研究。致力于未来3D Web平台开发实践,喜欢读书,阅读过大量技术书籍;善于总结归纳,能将各种技术融会贯通。
目录
第1章 现代网络3D技术在各个行业中的运用实例 1 1.1 网络游戏行业实例(运用Flash制作) 1 1.2 医学教育行业实例(运用WireFusion制作) 3 1.3 大型户外运动山势地形展示实例(运用WireFusion制作) 5 1.4 楼盘销售行业实例(运用Flash制作) 7 1.5 室内装潢行业实例(运用WireFusion制作) 8 1.6 建筑行业实例(运用WireFusion制作) 9 1.7 产品制造行业实例(运用WireFusion制作) 11 1.8 现代网络社区SNS行业实例(运用Flash制作) 11 1.9 三维电子地图——市政建设行业实例 12 1.10 网页3D战争类游戏(运用Unity制作) 13 1.11 本章总结 14第2章 ActionScript 3、PV3D及3D呈像技术的编程思想 15 2.1 ActionScript3的一些基本知识及使用技巧 16 2.1.1 一个Flash CS5的“helloWorld!”实例 16 2.1.2 一个Flash Builder4的“helloWorld!”实例 24 2.2 Flash3D的开源引擎PV3D 27 2.2.1 PV3D的简介 28 2.2.2 PV3D的数学呈像原理 28 2.2.3 PV3D的下载及其配置 28 2.2.4 计算机3D编程的五大要素 34 2.2.5 在Flash CS5中实现五大要素 35 2.2.6 在Flash CS5中创建一个基础模型 36 2.2.7 Flash的2D坐标系与PV3D的坐标系 39 2.2.8 本地坐标系与世界坐标系 40 2.2.9 给基础模型赋予材质 41 2.2.10 各种PV3D的API引用对照表及使用源码 43 2.2.11 材质的交互属性(Interactivity) 57 2.2.12 360°全景展示材质 59 2.2.13 对象的嵌套(Nesting) 60 2.2.14 创建空的DisplayObject3D对象 61 2.2.15 综合例子 63 2.3 摄像机(Camera) 69 2.3.1 摄像机的基本参数设置 73 2.3.2 各类型摄像机的API使用对照 73 2.3.3 摄像机运用实例 74 2.4 经典实例——纸飞机遨游太空世界 77 2.5 深度剖析纸飞机遨游太空世界经典实例的分类继承与矢量算法思想 83 2.6 不同渲染器之间的差异 94 2.7 为Flash构建3D模型 96 2.7.1 DAE插件的安装与导出 97 2.7.2 一个简单的外部模型调用实例 98 2.7.3 制作茶壶盖动画实例 102 2.7.4 制做3D机器人交互式动画 108 2.8 Flash3D引擎Alternativa3D 119 2.9 本章小结 120第3章 通过VRML与WireFusion初探虚拟现实技术与建模思想 121 3.1 VRML的概述 122 3.2 初识WireFusion界面 122 3.3 WireFusion所需的Java开发环境及JVM(Java虚拟机)工作原理 123 3.4 WireFusion与PV3D制作的茶壶三维交互式动画之间的对比 125 3.5 访问WireFusion制作的网页 129 3.6 设置“Loading”(加载)画面 130 3.7 WireFusion中的渲染模式、模型测量及设置“Navigation”导航按钮 131 3.8 WireFusion中复合材质的运用 138 3.9 综合演练——网上360°全景展示销售房屋及房屋布局 141 3.10 3ds Max带有光影效果的烘焙材质 166 3.11 综合演练——室内漫游 168 3.12 WireFusion中的Java脚本编程 171 3.13 构造函数 172 3.14 WireFusion中的接口函数 172 3.14.1 接口输入函数 172 3.14.2 接口输出函数 173 3.15 利用Java显示和隐藏3D Scene 174 3.16 综合演练——计算机攻破密码保险柜 175 3.17 SDK的下载,Eclipse的运用 183 3.18 3D Scene加载外部模型 185 3.19 播放器事件掩码参数所定义的预执行事件和刷帧事件 188 3.20 Java中的侦听函数 190 3.21 综合演练——人体透视图及局部器官 191 3.22 本章小结 206第4章 强大的跨平台3D游戏开发工具——Unity 207 4.1 VR Unity的基本界面介绍 208 4.2 Unity的注册 212 4.3 Unity的一个简单预览 212 4.4 Unity中的简单地形与太阳光照 214 4.5 Unity中的地形系统 217 4.6 草坪的制作与具体参数的设置 221 4.7 树形系统 225 4.8 快速创建游戏树叶 227 4.9 Wind Zone(风域) 231 4.10 Graphics Emulation(图形仿真) 232 4.11 Unity中的灯与光、“Mesh”(网格)和“Mesh Renderer”(网格渲染器) 234 4.11.1 默认渲染设置 235 4.11.2 为场景添加各种灯光 236 4.11.3 第一次为场景添加光源 236 4.11.4 “Flare”(耀斑)的制作 238 4.11.5 各种灯光的“Light Cookie”(遮挡材质)的制作 240 4.11.6 在Unity中创建夜晚场景 242 4.11.7 自发光物体的烘焙与“LightMapping” 243 4.12 Occlusion Culling(遮挡剔除) 245 4.13 Unity的脚本与组件 247 4.14 为地形添加水源、水流及制作水下模糊效果 249 4.15 Unity中的脚本运行时间片与接口 256 4.16 Unity中C# Script编程的注意事项 260 4.17 “MonoDevelop”编辑器 261 4.18 修改Unity的默认编辑器 263 4.19 导入外部模型及参数设置 264 4.20 “Prefab”(预制对象)的调用方法 267 4.21 图形用户界面类GUI 268 4.22 自定义Unity中的中文字体 271 4.23 制作旋转的炮塔 271 4.24 制作凹凸材质 273 4.25 制作炮弹的射击和爆炸效果 277 4.26 制作炮塔的填弹时间的实现及显示 286 4.27 为炮塔制作敌人 289 4.28 控制炮弹的发射力度 291 4.29 多炮塔的镜头切换 293 4.30 项目的版本控制 295 4.31 “Ragdoll”(角色系统)的概念及运用 297 4.32 在游戏中为人物添加各种运动动画 300 4.33 “Particle System”(动画粒子系统) 304 4.34 多语言脚本开发及编译脚本 306 4.35 Unity网页播放器在Windows中的大小 307 4.36 高效开发Hummer小游戏 308 4.37 制作游戏开场画面 312 4.38 绘制GUI背景图片和按钮 317 4.39 创建一个不断重复播放的2D背景 321 4.40 控制石头及汽车的运动 323 4.41 制作相撞时的爆炸效果 327 4.42 网格碰撞体的添加方式 330 4.43 巧用枚举来设置游戏角色的状态 332 4.44 游戏结束场景的设置 334 4.45 Unity的网页编程 336 4.46 Unity的通讯技术 339 4.46.1 Unity与网页的JS通讯技术 339 4.46.2 Unity的内部通信 344 4.47 “Shader”(着色语言) 346 4.48 基于层的碰撞检测 351 4.49 “Physic Material”(物理材质) 351第5章 统领未来的3D超级浏览器 355 5.1 一段轻松搞笑的故事 355 5.2 HTML5及即将诞生的超级浏览器必将取代第三方3D Web呈像技术 357 5.2.1 第三方3D Web呈像技术在网页开发上的弊端 357 5.2.2 HTML5在客户端存储数据的新方法良好地解决了3D Web时代可能出现的网络堵塞 357 5.2.3 3D浏览器能为3D Web提供不可或缺的准备 358 5.2.4 3D超级浏览器的软件系统体系结构 360 5.2.5 浅谈现代网站的工作结构与未来3D网站的工作结构 360 5.3 剖析Google的互联网发展策略 362 5.4 微软的应对策略 364 5.5 HTML5+WebGL的实战演练 364 5.5.1 HTML语言的主体框架结构 364 5.5.2 WebGL的基本呈像实例 367 5.5.3 利用“localStorage”初步创建超级浏览器的本地内置模型 373 5.5.4 关于一些优化 375 5.5.5 网页数据库将本地存储优化发挥到极致 377 5.6 马云是否会成为第一个开发出3D超级浏览器的人 381结束语 382参考文献 383