UNITY实战pdf下载pdf下载

UNITY实战百度网盘pdf下载

作者:
简介:本篇主要提供UNITY实战pdf下载
出版社:
出版时间:
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

作  者:[美]Joseph Hocking 著 蔡俊鸿 译 著 蔡俊鸿 译
定  价:69.8
出 版 社:清华大学出版社
出版日期:2019年01月01日
页  数:352
装  帧:平装
ISBN:9787302518952
主编推荐
《Unity 实战(第2版)》介绍如何使用Unity编写游戏。有经验的程序员可以把它当成Unity的入门书籍。本书的目标十分明确:带领有一些编程经验但没有Unity经验的读者使用Unity开发游戏。 讲授开发是完成示例项目,学生通过制作示例来学习,这正是本书采用的方式。本书的各个主题展现为构建游戏示例的步骤,当浏览本书时,鼓励读者在Unity中构建这些游戏。每几章挑选不同的项目来讲解,而不是整本书只开发一个项目。其他有些书籍采用“一个完整项目”的方法讲解,不足之处是如果对前面的章节不感兴趣,就等
目录
目 录 第Ⅰ部分 起步 章 初识Unity 3 1.1 为什么Unity如此优秀 4 1.1.1 Unity的优势 4 1.1.2 要意识到的缺点 6 1.1.3 使用Unity构建的游戏示例 7 1.2 如何使用Unity 10 1.2.1 Scene视图、Game视图和工具栏 11 1.2.2 使用鼠标和键盘 12 1.2.3 Hierarchy视图和Inspector面板 13 1.2.4 Project和Console标签 13 1.3 开始使用Unity编程 14 1.3.1 代码在Unity中运行:脚本组件 15 1.3.2 使用MonoDevelop,跨平台的IDE 16 1.3.3 打印到控制台:Hello World! 18 1.4 小结 20 第2章 构建一个令人置身3D空间的演示游戏 21 2.1 在开始之前 22 2.1.1 对项目做计划 22 2.1.2 了解3D坐标空间 23 2.2 开始项目:在场景中放置对象 25 2.2.1 布景:地板、外墙和内墙 25 2.2.2 灯光和摄像机 27 2.2.3 玩家的碰撞器和视口 28 2.3 移动对象:应用变换的脚本 29 2.3.1 图示说明如何通过编程实现移动 30 2.3.2 编写代码实现图中演示的运动 30 2.3.3 本地和全局坐标空间 32 2.4 用于观察周围的组件脚本:MouseLook 33 2.4.1 跟踪鼠标移动的水平旋转 34 2.4.2 有的垂直旋转 35 2.4.3 同时水平旋转和垂直旋转 36 2.5 键盘输入组件:人称控件 38 2.5.1 响应按下的键 39 2.5.2 设置独立于计算机运行速度的移动速率 40 2.5.3 移动CharacterController以检测碰撞 41 2.5.4 将组件调整为走路而不是飞翔 42 2.6 小结 44 第3章 为3D游戏添加敌人和子弹 45 3.1 通过射线射击 46 3.1.1 什么是射线发射 46 3.1.2 使用命令ScreenPointToRay射击 47 3.1.3 为准心和击中点添加可视化指示器 49 3.2 编写能响应的目标 52 3.2.1 确定被击中的对象 52 3.2.2 警告目标被击中 53 3.3 基本漫游AI 54 3.3.1 图解基础AI的工作原理 54 3.3.2 使用射线发射发现障碍物 55 3.3.3 跟踪角色的状态 56 3.4 生成敌人预设 58 3.4.1 什么是预设 58 3.4.2 创建敌人预设 58 3.4.3 在不可见的SceneController中实例化 59 3.5 通过实例化对象进行射击 62 3.5.1 创建子弹预设 62 3.5.2 发射子弹并和目标碰撞 63 3.5.3 伤害玩家 65 3.6 小结 66 第4章 为游戏开发图形 67 4.1 了解美术资源 67 4.2 构建基础3D场景:白盒 70 4.2.1 白盒的解释 70 4.2.2 为关卡绘制地板平面图 71 4.2.3 根据平面图布局几何体 71 4.3 使用2D图像给场景贴图 73 4.3.1 选择文件格式 73 4.3.2 导入图像文件 74 4.3.3 应用图像 7.4 使用贴图图像产生天空视觉效果 77 4.4.1 什么是天空盒 77 4.4.2 创建一个新天空盒材质 78 4.5 使用自定义3D模型 80 4.5.1 选择文件格式 81 4.5.2 导出和导入模型 81 4.6 使用粒子系统创建效果 84 4.6.1 调整默认效果的参数 85 4.6.2 为火焰应用新贴图 8.6.3 将粒子效果附加到3D对象上 87 4.7 小结 88 第Ⅱ部分 轻松工作 第5章 使用Unity的2D功能构建一款记忆力游戏 91 5.1 设置2D图形 92 5.1.1 为项目做准备 92 5.1.2 显示2D图像(亦称精灵) 94 5.1.3 将摄像机切换为2D模式 96 5.2 构建卡片对象并使它响应单击 97 5.2.1 从精灵中构建对象 97 5.2.2 鼠标输入代码 98 5.2.3 当单击时显示卡片正面 99 5.3 显示不同的卡片图像 99 5.3.1 通过编程加载图像 99 5.3.2 通过不可见的SceneController设置图像 100 5.3.3 实例化一叠卡片 102 5.3.4 打乱卡片 104 5.4 实现匹配和匹配得分 105 5.4.1 保存并比较翻开的卡片 106 5.4.2 隐藏不匹配的卡片 106 5.4.3 显示分数的文本 107 5.5 重启按钮 109 5.5.1 使用SendMessage编写UIButton组件 109 5.5.2 从SceneController中调用LoadScene 111 5.6 小结 112 第6章 创建基本的2D平台游戏 113 6.1  设置图形 114 6.1.1  放置墙壁和地板 114 6.1.2  导入精灵表 115 6.2 左右移动玩家 116 6.2.1 编写键盘控制 117 6.2.2 与墙壁碰撞 117 6.3 播放精灵动画 118 6.3.1 讲解Mecanim动画系统 118 6.3.2 在代码中触发动画的播放 120 添加跳跃功能 121 .1 因重力而下落 121 .2 施加向上的跃动 122 .3 检测地面 123 6.5 平台游戏的附加功能 123 6.5.1 不同寻常的楼层:斜坡和单向平台 124 6.5.2 实现移动的平台 125 6.5.3 摄像机控制 128 6.6 小结 129 第7章 在游戏中放置GUI 131 7.1 在开始写代码之前 133 7.1.1 立即模式GUI还是不错2D界面 133 7.1.2 规划布局 134 7.1.3 导入UI图像 134 7.2 设置GUI显示 135 7.2.1 为界面创建画布 135 7.2.2 按钮、图像和文本标签 136 7.2.3 控制UI元素的位置 139 7.3 编写UI中的交互 140 7.3.1 编写不可见的UIController 141 7.3.2 创建弹出窗口 143 7.3.3 使用滑动条和输入域设置值 145 7.4 通过响应事件更新游戏 147 7.4.1 集成事件系统 148 7.4.2 从场景中广播和侦听事件 148 7.4.3 从HUD广播和侦听事件 150 7.5 小结 151 第8章 创建第三人称3D游戏:玩家移动和动画 153 8.1 将摄像机视图调整为第三人称视角 155 8.1.1 导入一个用于观察的角色 155 8.1.2 将阴影添加到场景 156 8.1.3 摄像机环绕玩家角色 158 8.2 编写程序控制摄像机的相对移动 160 8.2.1 旋转角色,以朝向移动方向 160 8.2.2 朝某方向移动 162 8.3 实现跳跃动作 1 8.3.1 应用垂直速度和加速度 1 8.3.2 修改地面检测来处理边缘和斜坡 166 8.4 设置玩家角色上的动画 169 8.4.1 在导入的模型上定义动画剪辑 171 8.4.2 为动画创建动画控制器 172 8.4.3 编写操作Animator组件的代码 175 8.5 小结 176 第9章 在游戏中添加交互设施和物件 177 9.1 创建门和其他设施 178 9.1.1 用按键控制开关的门 178 9.1.2 用开门之前检查距离和朝向 179 9.1.3 创建一个变色监控器 181 9.2 通过碰撞与对象交互 182 9.2.1 和具有物理功能的障碍物碰撞 182 9.2.2 用触发器对象操作门 183 9.2.3 收集当前关卡散落的物件 186 9.3 管理仓库数据和游戏状态 187 9.3.1 设置玩家和仓库管理器 188 9.3.2 编程实现游戏管理器 189 9.3.3 把物品存储在集合对象中:List与Dictionary 193 9.4 使用和装备物品的仓库UI 195 9.4.1 在UI中显示仓库物品 195 9.4.2 装备一个用来开门的钥匙 198 9.4.3 通过使用血量包来恢复玩家的血量 199 9.5 小结 201 第Ⅲ部分 冲刺阶段 0章 将游戏连接到互联网 205 10.1 创建户外场景 207 10.1.1 使用天空盒生成天空视觉效果 207 10.1.2 通过代码设置大气环境 208 10.2 从互联网服务下载天气数据 210 10.2.1 使用协程请求HTTP数据 213 10.2.2 解析XML 217 10.2.3 解析JSON 218 10.2.4 基于天气数据影响场景 220 10.3 添加一个网络布告栏 221 10.3.1 从互联网加载图像 222 10.3.2 在布告栏上显示图像 224 10.3.3 缓存下载的图像以供重用 225 10.4 将数据发送到Web服务器 227 10.4.1 跟踪当前的天气:发送t请求 227 10.4.2 PHP中的服务器端代码 229 10.5 小结 230 1章 播放音频:音效和音乐 231 11.1 导入音效 232 11.1.1 支持的文件格式 232 11.1.2 导入音频文件 234 11.2 播放音效 235 11.2.1 音频剪辑、音源和声音侦听器 235 11.2.2 设定循环播放的声音 236 11.2.3 用代码触发音效 237 11.3 音频控制接口 238 11.3.1 建立中心AudioManager 239 11.3.2 音量控制UI 241 11.3.3 播放UI声音 244 11.4 背景音乐 245 11.4.1 播放循环音乐 245 11.4.2 独立控制音乐的音量 248 11.4.3 歌曲间的淡入淡出 250 11.5 小结 253 2章 将各部分整合为一个完整的游戏 255 12.1 再次利用项目构建动作RPG演示游戏 256 12.1.1 将多个项目的资源和代码装配在一起 257 12.1.2 编写指向-单击控件:移动和设备 259 12.1.3 使用新界面替换旧GUI 2 12.2 开发总体的游戏结构 270 12.2.1 控制任务流和多个关卡 270 12.2.2 到达出口,完成一个关卡 274 12.2.3 被敌人捉到时关卡失败 276 12.3 处理玩家在游戏过程中的进度 278 12.3.1 保存并加载玩家进度 278 12.3.2 完成三个关卡,游戏通关 282 12.4 小结 284 3章 将游戏部署到玩家的设备 285 13.1 构建用于桌面的应用包:Windows、Mac和Linux 287 13.1.1 构建应用 288 13.1.2 调整Player Settings:设置游戏的名称和图标 289 13.1.3 平台依赖的编译 290 13.2 为Web构建游戏 292 13.2.1 Unity Player和HTML5/WebGL 292 13.2.2 构建嵌入网页的游戏 292 13.2.3 与浏览器中的通信 292 13.3 构建移动应用的平台:iOS和Android 296 13.3.1 设置构建工具 296 13.3.2 贴图压缩 300 13.3.3 开发插件 301 13.4 小结 308 附录A 场景导航和快捷键 309 A.1 使用鼠标进行场景导航 309 A.2 有用的快捷键 310 附录B 与Unity一同使用的外部工具 311 B.1 编程工具 311 B.1.1 Visual Studio 311 B.1.2 Xcode 311 B.1.3 Android SDK 312 B.1.4 SVN、Git或Mercurial 312 B.2 3D美术应用 312 B.2.1 Maya 312 B.2.2 3ds Max 312 B.2.3 Blender 313 B.2.4 SketchUp 313 B.3 2D图像编辑器 313 B.3.1 Photoshop 313 B.3.2 GIMP 313 B.3.3 TexturePacker 313 B.3.4 Aseprite, Pyxel Edit 314 B.4 音频软件 314 B.4.1 Pro Tools 314 B.4.2 Audacity 314 附录C 在Blender中建模一个板凳 315 C.1 构建网格几何体 316 C.2 模型的贴图映射 319 附录D 在线学习资源 323 D.1 其他指南 323 D.2 代码库 324 后序 327
内容简介
《Unity实战(第2版)》详细介绍如何用Unity编写和部署游戏。探讨许多有趣的示例,实践Unity直观的工作流工具和优选的呈现引擎。这个实用指南揭示游戏开发过程的各个方面,包括初的基础工作、创建自定义AI脚本和构建易于阅读的UI。应读者的要求,全新修订的第2版增加一个新章节,介绍如何使用Unity的扩展2D工具包来构建2D平台。
作者简介
[美]Joseph Hocking 著 蔡俊鸿 译 著 蔡俊鸿 译
Joseph Hocking 是一名软件工程师,专门研究交互式媒体开发。他目前为InContext Solutions 公司工作,在为Synapse Games 公司工作期间撰写了《Unity 5实战  使用C#和Unity开发多平台游戏》。他还在伊利诺伊大学芝加哥分校、芝加哥艺术学院和哥伦比亚大学芝加哥分校授课。
摘要
前 言 我从事游戏编写工作很长时间了,但近才开始使用Unity。当我开始开发游戏时,Unity尚未出现,它的版在2005年发布。从一开始,它就承诺要作为游戏开发工具,但直到发布了几个版本,它也没有实现诺言。iOS和Android(统称为“移动”平台)等平台是后来才出现的,这些平台在很大程度上促成了Unity日益突出的地位。 初,我将Unity视为一个有趣的开发工具,我关注它,但并不真正使用它。那段时间,我在为桌面计算机、网站编写游戏,为各种客户端开发项目。我使用过Blitz3D和Flash等工具,它们很适合编程,但有诸多。随着这些工具开始衰落,我就一直在寻找开发游戏的更好方式。 我从Unity 3开始体验,后来在Synapse Games进行开发时就完全转向了Unity。初是为Synapse开发网页游戏,终全面转向移动游戏。那时我们进行游戏开发的整个生命周期,因为U等