网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | Unity 3D\2D手机游戏开发 |
分类 | 人文社科-社会科学-语言文字 |
作者 | 金玺曾 |
出版社 | 清华大学出版社 |
下载 | |
简介 | 作者简介 金玺曾,资深游戏开发工程师,拥有10余年游戏行业从业经验,先后在上海盛大网络,上海爱客士电脑软件,上海皿鎏软件从事游戏开发工作,参与过很多原创和外包项目。 目录 章 Unity基础\t1 1.1 初识游戏引擎和Unity\t2 1.2 运行Unity\t3 1.2.1 Unity的版本\t3 1.2.2 下载并安装Unity\t4 1.2.3 在线激活Unity\t4 1.2.4 运行示例工程\t4 1.3 创建一个Hello World程序\t7 1.3.1 安装Visual Studio\t8 1.3.2 编写脚本\t8 1.3.3 编译输出\t10 1.4 调试程序\t11 1.4.1 显示Log\t11 1.4.2 在Visual Studio中设置断点\t11 1.5 Unity脚本基础\t12 1.5.1 Script(脚本)组件\t12 1.5.2 脚本的执行顺序\t13 1.5.3 脚本的序列化\t14 1.5.4 组件式编程\t15 1.5.5 协程编程\t16 1.6 预置文件Prefab和资源管理\t17 1.6.1 创建Prefab\t17 1.6.2 Unity资源包\t18 1.6.3 管理Unity插件\t18 1.7 读取资源和实例化\t19 1.7.1 在脚本中创建一个Game Object\t19 1.7.2 通过序列化方式引用资源\t19 1.7.3 通过IO方式读取资源\t20 1.8 保存工程\t20 1.9 时间和动画\t21 1.10 小结\t21 第2章 太空射击游戏\t23 2.1 游戏介绍\t24 2.1.1 游戏操作\t24 2.1.2 主角和敌人\t24 2.1.3 游戏UI\t24 2.2 导入美术资源\t24 2.3 创建场景\t25 2.3.1 创建火星背景和星空动画\t26 2.3.2 设置摄像机和灯光\t30 2.4 创建主角\t31 2.4.1 创建脚本\t32 2.4.2 控制飞船移动\t33 2.4.3 创建子弹\t35 2.4.4 创建子弹Prefab\t36 2.4.5 发射子弹\t37 2.5 创建敌人\t38 2.6 物理碰撞\t39 2.6.1 添加碰撞体\t39 2.6.2 触发碰撞\t40 2.7 不错敌人\t43 2.7.1 创建敌人\t43 2.7.2 发射子弹\t44 2.8 声音与特效\t46 2.9 敌人生成器\t48 2.10 游戏UI和战斗管理\t50 2.10.1 创建显示得分的UI界面\t50 2.10.2 创建显示游戏失败的UI界面\t51 2.10.3 编写脚本\t52 2.11 关卡跳转\t54 2.12 用鼠标控制主角\t56 2.13 精确的碰撞检测\t58 2.14 自动创建Prefab\t60 2.15 发布游戏\t62 2.16 使用PoolManager创建对象池\t64 2.17 小结\t66 第3章 人称射击游戏\t68 3.1 策划\t69 3.1.1 游戏介绍\t69 3.1.2 UI界面\t69 3.1.3 主角\t69 3.1.4 敌人\t69 3.2 游戏场景\t69 3.3 主角\t70 3.3.1 角色控制器\t70 3.3.2 摄像机\t72 3.3.3 武器\t73 3.4 敌人\t74 3.4.1 寻路\t74 3.4.2 设置动画\t76 3.4.3 行为\t77 3.5 UI界面\t80 3.6 交互\t84 3.6.1 主角的射击\t84 3.6.2 敌人的进攻与死亡\t86 3.7 出生点\t88 3.8 小地图\t90 3.9 小结\t93 第4章 塔防游戏\t94 4.1 策划\t95 4.1.1 场景\t95 4.1.2 摄像机\t95 4.1.3 胜负判定\t95 4.1.4 敌人\t95 4.1.5 防守单位\t95 4.1.6 UI界面\t95 4.2 地图编辑器\t96 4.2.1 “格子”数据\t96 4.2.2 在Inspector窗口添加自定义UI 控件\t98 4.2.3 创建一个自定义窗口\t100 4.3 游戏场景\t102 4.4 制作UI\t103 4.5 创建游戏管理器\t105 4.6 摄像机\t109 4.7 路点\t111 4.8 敌人\t115 4.9 敌人生成器\t118 4.9.1 创建敌人生成器\t118 4.9.2 遍历敌人\t121 4.10 防守单位\t121 4.11 生命条\t130 4.12 小结\t132 第5章 2D游戏\t133 5.1 Unity 2D系统简介\t134 5.2 创建Sprite\t134 5.2.1 使用SpriteEditor创建Sprite\t134 5.2.2 使用SpritePacker创建Sprite\t136 5.2.3 图层排序\t137 5.2.4 Sprite边框和重复显示\t138 5.3 动画制作\t138 5.3.1 序列帧动画\t138 5.3.2 使用脚本实现序列帧动画\t140 5.3.3 骨骼动画\t141 5.4 2D物理\t142 5.5 捕鱼游戏\t146 5.5.1 游戏玩法\t146 5.5.2 准备2D资源\t146 5.5.3 创建鱼\t148 5.5.4 创建鱼群生成器\t150 5.5.5 创建子弹和大炮\t151 5.5.6 物理碰撞\t153 5.6 2D材质\t154 5.6.1 修改Sprite颜色\t154 5.6.2 自定义的黑白效果材质\t155 5.7 小结\t155 第6章 与Web服务器的交互\t156 6.1 Web服务器简介\t157 6.2 在Windows上安装部署Apache\t158 6.2.1 安装Apache\t158 6.2.2 Apache常用命令\t159 6.2.3 安装MySQL\t159 6.2.4 安装PHP\t161 6.2.5 安装Redis\t162 6.3 PHP开发环境\t163 6.3.1 个PHP程序\t163 6.3.2 调试PHP代码\t164 6.3.3 PHP基本语法\t165 6.4 WWW基本应用\t167 6.4.1 创建简单的UI界面\t167 6.4.2 GET请求\t168 6.4.3 POST请求\t169 6.4.4 上传下载图片\t170 6.4.5 下载声音文件\t171 6.5 分数排行榜\t172 6.5.1 创建数据库\t172 6.5.2 创建PHP脚本\t173 6.5.3 上传下载分数\t175 6.5.4 使用Redis缓存数据\t177 6.6 MD5验证\t179 6.7 小结\t180 第7章 TCP UDP实例\t181 7.1 网络开发简介\t182 7.2 简单的网络通信程序\t184 7.2.1 简单的TCP程序\t184 7.2.2 简单的UDP程序\t186 7.3 异步TCP网络通信\t188 7.3.1 创建数据包对象\t188 7.3.2 逻辑处理\t190 7.3.3 核心TCP网络功能\t192 7.3.4 创建聊天协议\t196 7.4 Unity聊天客户端\t197 7.5 聊天服务器端\t200 7.6 JSON.NET简介\t205 7.7 小结\t206 第8章 HTML5(WebGL)游戏移植\t207 8.1 关于HTML5和WebGL\t208 8.2 导出Unity游戏到WebGL平台\t208 8.2.1 导出WebGL游戏\t208 8.2.2 设置WebGL模板\t210 8.2.3 默认的index.html\t210 8.2.4 文件访问\t211 8.3 自定义Loading页面\t212 8.4 编写WebGL游戏插件\t215 8.4.1 访问JavaScript示例一\t215 8.4.2 访问JavaScript示例二\t216 8.5 在网页上保存游戏记录\t217 8.6 小结\t217 第9章 iOS游戏移植\t218 9.1 iOS简介\t219 9.2 软件安装\t219 9.3 申请开发权限\t219 9.4 设置iOS开发环境\t219 9.5 测试iOS游戏\t222 9.6 发布iOS游戏\t223 9.7 对接iOS原生语言\t223 9.7.1 在Xcode中创建Objectiv-C 代码\t223 9.7.2 在Unity中引用Objectiv-C 代码\t226 9.8 内消费\t227 9.9 本地存储位置\t227 9.10 使用命令行编译Xcode工程\t228 9.10.1 编译Xcode工程\t228 9.10.2 打包.ipa文件\t228 9.11 小结\t228 0章 Android游戏移植\t229 10.1 Android简介\t230 10.2 安装Android SDK\t230 10.3 运行Android游戏\t231 10.3.1 准备测试环境\t231 10.3.2 设置Android游戏工程\t232 10.3.3 测试Android游戏\t234 10.3.4 发布Android游戏\t234 10.3.5 Obb数据包\t236 10.4 使用Android Studio\t236 10.4.1 Android Studio简介\t237 10.4.2 配置Android Studio\t237 10.4.3 创建Hello world程序\t238 10.5 从Unity到Android Studio\t239 10.5.1 创建Unity工程\t240 10.5.2 创建Android Studio工程\t241 10.5.3 查看Log\t243 10.5.4 发布程序\t244 10.6 使用脚本编译游戏\t245 10.6.1 在Unity中使用脚本导出 Android工程\t245 10.6.2 使用Python脚本访问Unity 命令行\t247 10.6.3 使用命令行编译Android Studio 工程\t248 10.7 获得签名证书的sha1值\t249 10.8 导入库文件\t250 10.9 Plugins目录\t251 10.10 代码混淆\t251 10.11 百度地图实例\t252 10.11.1 导入百度地图SDK\t252 10.11.2 实现百度地图控件\t253 10.12 触屏操作\t256 10.13 AssetBundle\t261 10.13.1 创建AssetBundle资源\t261 10.13.2 下载、实例化AssetBundle 资源\t263 10.13.3 批量创建AssetBundle\t264 10.14 小结\t265 1章 Unity新GUI完全攻略\t266 11.1 Unity的GUI系统\t267 11.2 Canvas(画布)\t267 11.2.1 创建Canvas\t268 11.2.2 设置Canvas\t268 11.2.3 Canvas的屏幕适应模式\t271 11.2.4 Canvas层级内UI控件的 排序\t271 11.2.5 Canvas的隐藏和显示\t272 11.2.6 查找UI层级下的子控件\t272 11.3 UI坐标对齐方式\t272 11.4 Text(文字)\t273 11.5 自定义字体\t274 11.5.1 创建字体贴图\t274 11.5.2 创建Shader\t276 11.6 Image(图像)\t278 11.6.1 创建Image控件\t278 11.6.2 设置Alpha\t279 11.6.3 设置Raycast Target\t279 11.6.4 设置UI图像为Sliced类型\t280 11.6.5 设置UI图像为Tiled类型\t281 11.6.6 设置UI图像为Filled类型\t281 11.6.7 Mask(蒙版)\t282 11.7 Button(按钮)控件\t283 11.7.1 创建按钮\t283 11.7.2 设置按钮状态变化\t283 11.7.3 在编辑器中设置按钮触发 事件\t284 11.7.4 在脚本中定义按钮单击事件\t285 11.7.5 判断按压按钮事件\t286 11.8 Toggle(开关)控件\t286 11.8.1 创建Toggle控件\t286 11.8.2 Toggle组\t287 11.8.3 Toggle控件的脚本\t288 11.9 Raw Image控件\t288 11.10 Slider(滑块)控件\t290 11.10.1 创建Slider控件\t290 11.10.2 改变滑块大小\t290 11.10.3 使用脚本控制滑块\t291 11.11 Input Field(文本输入)控件\t291 11.12 Scroll View(卷轴视图)控件\t292 11.13 Dropdown(下拉列表)控件\t294 11.14 实用UI功能\t295 11.14.1 判断是否单击了UI\t295 11.14.2 拖动UI控件方法1\t295 11.14.3 拖动UI控件方法2\t297 11.14.4 在UI前面显示粒子特效\t298 11.15 使用插件DOTween制作动画\t299 11.15.1 在编辑器中设置DOTween 动画\t299 11.15.2 在脚本中设置DOTween 动画\t300 11.16 使用插件EnhancedScroller优化 卷轴视图\t301 11.16.1 创建数据模型\t302 11.16.2 创建UI视图控制脚本\t302 11.16.3 创建控制器\t302 11.16.4 创建卷轴视图UI\t303 11.17 小结\t305 2章 游戏开发中的美术工作 流程\t306 12.1 Unity和艺术家\t307 12.2 视图操作捕捉\t307 12.3 光照和渲染系统\t308 12.3.1 光源类型\t308 12.3.2 渲染管道\t309 12.3.3 质量设置\t310 12.3.4 实时阴影\t310 12.3.5 环境光\t312 12.3.6 Fog(雾)\t313 12.3.7 直接照明与间接照明\t314 12.3.8 Lightmapping(光照贴图)\t316 12.3.9 环境反射采样\t321 12.3.10 光照采样\t322 12.4 色彩空间\t324 12.5 物理材质\t326 12.6 摄像机\t329 12.7 地形\t331 12.8 粒子特效\t334 12.9 物理设置\t339 12.10 游戏资源\t341 12.10.1 贴图\t341 12.10.2 在3ds Max中创建 法线贴图\t342 12.10.3 3ds Max静态模型导出\t343 12.10.4 3ds Max动画导出\t345 12.10.5 Maya模型导出\t345 12.11 Unity两足动画系统\t346 12.11.1 修改3ds Max两足动画 骨骼\t347 12.11.2 导入3ds Max两足角色到 Unity\t348 12.11.3 导入角色动画到Unity\t348 12.11.4 表情动画\t349 12.11.5 动画控制器\t350 12.12 动画插件Skele\t351 12.13 电影片段制作\t355 12.14 美术资源的优化\t357 12.15 小结\t358 3章 Behavior Designer——行为 树AI\t359 13.1 行为树和AI\t360 13.1.1 行为树插件的安装\t360 13.1.2 简单的AI处理方式\t360 13.1.3 状态机AI处理方式\t361 13.1.4 Behavior Designer的行为树AI 处理方式\t362 13.2 行为树任务\t363 13.2.1 任务返回值\t363 13.2.2 Action(动作)\t363 13.2.3 Composite(组合)\t363 13.2.4 Conditional(条件)\t365 13.2.5 Decorator(修饰)\t366 13.3 行为树实例\t366 13.3.1 主角的行为树\t367 13.3.2 游荡的敌人\t372 13.3.3 行为树的交互\t373 13.4 行为树系统扩展\t376 13.4.1 外部行为树\t376 13.4.2 自定义任务\t377 13.4.3 自定义共享数据类型\t378 13.4.4 在脚本中设置行为树\t380 13.4.5 在脚本中发送事件\t380 13.5 优化\t380 13.6 小结\t381 4章 玩转PlayMaker\t382 14.1 关于PlayMaker\t383 14.1.1 优点和缺点\t383 14.1.2 安装\t383 14.2 PlayMaker的模块和工作机制\t384 14.2.1 有限状态机\t384 14.2.2 创建PlayMaker状态机\t384 14.2.3 State(状态)\t385 14.2.4 Event(事件)\t385 14.2.5 Action(动作)\t386 14.2.6 变量\t387 14.2.7 发送事件\t388 14.3 自定义Action\t388 14.4 小结\t391 5章 VR虚拟现实开发\t392 15.1 VR简介\t393 15.2 设置HTC Vive开发环境\t393 15.3 VR操作示例\t394 15.3.1 创建VR场景\t394 15.3.2 手柄控制器\t395 15.4 小结\t397 6章 AR增强现实开发\t398 16.1 AR和Vuforia\t399 16.2 创建Vuforia工程\t399 16.3 准备AR参考目标\t401 16.4 设置AR参考目标\t402 16.5 小结\t404 7章 Shader编程与后期特效\t405 17.1 Shader简介\t406 17.2 渲染管线\t406 17.3 ShaderLab语言\t407 17.4 CG语言简介\t409 17.5 Vertex and Fragment Shader示例\t409 17.5.1 显示纹理和色彩\t409 17.5.2 使用通道表现多个纹理\t412 17.5.3 添加基本光照\t414 17.5.4 UV动画效果\t415 17.5.5 黑白效果\t416 17.5.6 简单描边效果\t417 17.5.7 Alpha透明效果\t419 17.6 屏幕特效示例\t421 17.7 后期特效\t423 17.8 小结\t424 8章 动态编程和Lua\t425 18.1 动态语言简介\t426 18.2 动态读取程序集实现热更新\t426 18.2.1 创建.dll文件\t426 18.2.2 测试热更新.dll文件\t427 18.2.3 通过反射访问.dll文件\t428 18.3 Lua语言快速教程\t429 18.3.1 MoonSharp和Lua开发环境的 安装\t429 18.3.2 Lua提供的类型\t429 18.3.3 Lua的判断和循环语句\t430 18.3.4 Lua的函数\t431 18.3.5 Lua的IO操作\t431 18.3.6 Lua的数组操作\t432 18.3.7 Lua的字符串操作\t433 18.3.8 Lua的协程\t433 18.4 Lua与Unity的交互\t435 18.4.1 在Unity中读取Lua代码\t435 18.4.2 将Unity 功能导入到 Lua中\t436 18.5 Lua脚本的热更新\t437 18.6 小结\t438 附录A C#语言\t439 A.1 C#基础\t440 A.1.1 C#简介\t440 A.1.2 运行控制台程序\t440 A.1.3 类型\t441 A.1.4 内置类型\t441 A.1.5 标识符\t442 A.1.6 语句和表达式\t442 A.1.7 变量和常量\t443 A.1.8 枚举\t443 A.1.9 数学操作符\t443 A.1.10 关系操作符\t444 A.1.11 逻辑操作符\t444 A.1.12 操作符优先级\t445 A.1.13 方法\t445 A.1.14 递归\t446 A.1.15 条件分支语句\t446 A.1.16 循环语句\t447 A.1.17 三元操作符\t448 A.1.18 预处理\t448 A.2 面向对象编程\t449 A.2.1 类\t449 A.2.2 this关键字\t450 A.2.3 封装\t451 A.2.4 继承与多态\t452 A.2.5 静态成员\t454 A.2.6 异常处理\t455 A.3 字符串\t456 A.4 数组\t458 A.4.1 创建数组\t458 A.4.2 遍历数组和迭代器\t458 A.5 基本I/O操作\t460 A.5.1 写文件\t460 A.5.2 读文件\t461 A.5.3 删除文件\t462 A.5.4 二进制读写\t462 A.6 泛型\t463 A.6.1 实现泛型的基本语法\t463 A.6.2 List的常见操作\t464 A.6.3 List的排序\t465 A.7 委托\t468 A.7.1 委托\t468 A.7.2 Lambda表达式\t469 A.7.3 泛型委托\t470 A.7.4 Action和Func\t470 A.8 反射和特性\t471 A.8.1 反射\t471 A.8.2 特性\t471 A.9 小结\t472 附录B 特殊文件夹\t473 附录C Unity编辑器菜单中英文对照\t475 内容推荐 本书Unity游戏开发实战为主线,详尽介绍了太空射击游戏、第一人称射击游戏、塔防游戏和2D游戏开发的开发技巧,此外还介绍了跨平台游戏开发的移植方法,可以将游戏移值到HTML5\\IOS\\Android平台,还介绍了Unity的流行插件行为树和PlayMaker。新GUI,新版中更是增加了网络多人 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。