当前位置:首页 > 工业技术
Unity 3D/2D手机游戏开发  从学习到产品
Unity 3D/2D手机游戏开发  从学习到产品

Unity 3D/2D手机游戏开发 从学习到产品PDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:金玺曾编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2017
  • ISBN:9787302481652
  • 页数:444 页
图书介绍:本书共分7部分20章,第一部分以游戏示例——太空射击、塔防、2D游戏示例介绍Unity入门技术。第二部分介绍Unity在Http和TCP/IP网络方面的应用。第三部分介绍如何将Unity游戏移植到网页、IOS和Android平台。第四部分介绍Unity在GUI、动画、物理、粒子特效和Shader方面的应用。第五部分介绍如何在Unity中创建美术资源。第六部分介绍Unity常用插件。第七部分Unity的实用功能补充。
《Unity 3D/2D手机游戏开发 从学习到产品》目录

第1章 Unity基础 1

1.1 初识游戏引擎和Unity 2

1.2 运行Unity 3

1.2.1 Unity的版本 3

1.2.2 下载并安装Unity 4

1.2.3 在线激活Unity 4

1.2.4 运行示例工程 4

1.3 创建一个Hello World程序 7

1.3.1 安装Visual Studio 7

1.3.2 编写脚本 7

1.3.3 编译输出 9

1.4 调试程序 10

1.4.1 显示Log 10

1.4.2 在Visual Studio中设置断点 11

1.4.3 在MonoDevelop中设置断点 12

1.5 Unity脚本基础 12

1.5.1 Script(脚本)组件 12

1.5.2 脚本的执行顺序 12

1.5.3 脚本的序列化 13

1.5.4 组件式的编程 14

1.5.5 协程编程 15

1.6 预置文件Prefab 16

1.7 实例化 17

1.8 读取资源 18

1.9 保存工程 18

1.10 小结 18

第2章 太空射击游戏 19

2.1 游戏介绍 20

2.1.1 游戏操作 20

2.1.2 主角和敌人 20

2.1.3 游戏UI 20

2.2 导入美术资源 20

2.3 创建场景 21

2.3.1 创建火星背景和星空动画 22

2.3.2 设置摄像机和灯光 25

2.4 创建主角 27

2.4.1 创建脚本 27

2.4.2 控制飞船移动 28

2.4.3 创建子弹 30

2.4.4 创建子弹Prefab 31

2.4.5 发射子弹 32

2.5 创建敌人 33

2.6 物理碰撞 34

2.6.1 添加碰撞体 34

2.6.2 触发碰撞 35

2.7 高级敌人 38

2.7.1 创建敌人 38

2.7.2 发射子弹 39

2.8 声音与特效 41

2.9 敌人生成器 43

2.10 游戏UI和战斗管理 45

2.10.1 创建显示得分的UI界面 45

2.10.2 创建显示游戏失败的UI界面 46

2.10.3 编写脚本 46

2.11 关卡跳转 49

2.12 用鼠标控制主角 51

2.13 精确的碰撞检测 53

2.14 自动创建Prefab 55

2.15 发布游戏 57

2.16 使用Pool Boss创建缓存池 59

2.17 小结 62

第3章 第一人称射击游戏 63

3.1 策划 64

3.1.1 游戏介绍 64

3.1.2 UI界面 64

3.1.3 主角 64

3.1.4 敌人 64

3.2 游戏场景 64

3.3 主角 65

3.3.1 角色控制器 65

3.3.2 摄像机 67

3.3.3 武器 68

3.4 敌人 69

3.4.1 寻路 69

3.4.2 设置动画 71

3.4.3 行为 72

3.5 UI界面 76

3.6 交互 80

3.6.1 主角的射击 80

3.6.2 敌人的进攻与死亡 82

3.7 出生点 84

3.8 小地图 87

3.9 小结 90

第4章 塔防游戏 91

4.1 策划 92

4.1.1 场景 92

4.1.2 摄像机 92

4.1.3 胜负判定 92

4.1.4 敌人 92

4.1.5 防守单位 92

4.1.6 UI界面 92

4.2 地图编辑器 93

4.2.1 “格子”数据 93

4.2.2 在Inspector窗口添加自定义UI控件 95

4.2.3 创建一个自定义窗口 98

4.3 游戏场景 99

4.4 制作UI 100

4.5 创建游戏管理器 103

4.6 摄像机 106

4.7 路点 109

4.8 敌人 113

4.9 敌人生成器 116

4.9.1 创建敌人生成器 116

4.9.2 遍历敌人 118

4.10 防守单位 119

4.11 生命条 128

4.12 小结 130

第5章 2D游戏 131

5.1 Unity 2D系统简介 132

5.2 创建Sprite 132

5.2.1 使用SpriteEditor创建Sprite 132

5.2.2 使用SpritePacker创建Sprite 134

5.2.3 图层排序 135

5.2.4 Sprite边框和重复显示 136

5.3 动画制作 137

5.3.1 序列帧动画 137

5.3.2 使用脚本实现序列帧动画 138

5.3.3 骨骼动画 139

5.4 2D物理 141

5.5 捕鱼游戏 144

5.5.1 游戏玩法 144

5.5.2 准备2D资源 145

5.5.3 创建鱼 146

5.5.4 创建鱼群生成器 148

5.5.5 创建子弹和大炮 150

5.5.6 物理碰撞 152

5.6 2D材质 153

5.6.1 修改Sprite颜色 153

5.6.2 自定义的黑白效果材质 153

5.7 小结 154

第6章 与Web服务器的交互 155

6.1 Web服务器简介 156

6.2 在Windows上安装部署Apache 156

6.2.1 安装Apache 156

6.2.2 Apache常用命令 158

6.2.3 安装MySQL 158

6.2.4 安装PHP 160

6.2.5 安装Redis 161

6.3 PHP开发环境 162

6.3.1 第一个PHP程序 162

6.3.2 调试PHP代码 163

6.3.3 PHP基本语法 164

6.4 WWW基本应用 165

6.4.1 HTTP协议 166

6.4.2 GET请求 166

6.4.3 POST请求 168

6.4.4 上传下载图片 169

6.4.5 下载声音文件 170

6.5 分数排行榜 171

6.5.1 创建数据库 171

6.5.2 创建PHP脚本 172

6.5.3 上传下载分数 174

6.5.4 使用Redis缓存数据 177

6.6 MD5验证 179

6.7 Best HTTP 179

6.8 Linux环境部署 180

6.8.1 Linux管理工具 180

6.8.2 安装Apache 181

6.8.3 安装MySQL 182

6.8.4 安装PHP 183

6.8.5 安装Redis 185

6.9 小结 186

第7章 基于TCP/IP协议的聊天实例 187

7.1 TCP/IP开发简介 188

7.2 一个简单的网络程序 190

7.3 网络引擎 192

7.3.1 数据包 193

7.3.2 逻辑处理 199

7.3.3 网络功能 201

7.3.4 创建聊天协议 208

7.4 聊天客户端 208

7.5 聊天服务器端 211

7.6 JSON.NET简介 214

7.7 小结 215

第8章 HTML5 (WebGL)游戏移植 216

8.1 关于HTML5和WebGL 217

8.2 导出Unity游戏到WebGL平台 217

8.2.1 导出WebGL游戏 217

8.2.2 设置WebGL模板 219

8.2.3 默认的index.html 219

8.2.4 文件访问 220

8.3 自定义Loading页面 221

8.4 编写WebGL游戏插件 224

8.4.1 访问Javascript示例一 224

8.4.2 访问Javascript示例二 225

8.5 在网页上保存游戏记录 226

8.6 AssetBundle 227

8.6.1 创建AssetBundle资源 227

8.6.2 下载、实例化AssetBundle资源 229

8.6.3 批量创建AssetBundle 230

8.7 小结 231

第9章 iOS游戏移植 232

9.1 iOS简介 233

9.2 软件安装 233

9.3 申请开发权限 233

9.4 设置iOS开发环境 233

9.5 测试iOS游戏 236

9.6 发布iOS游戏 237

9.7 对接iOS原生语言 237

9.7.1 在Xcode中创建Objectiv-C代码 237

9.7.2 在Unity中引用Objectiv-C代码 240

9.8 内消费 241

9.9 本地存储位置 241

9.10 小结 241

第10章 Android游戏移植 242

10.1 Android简介 243

10.2 安装Android SDK 243

10.3 运行Android游戏 245

10.3.1 准备一部Android手机 245

10.3.2 设置Android游戏工程 245

10.3.3 测试Android游戏 247

10.3.4 发布Android游戏 247

10.4 使用Android Studio 249

10.4.1 Android Studio简介 250

10.4.2 配置Android Studio 250

10.4.3 创建Hello world程序 251

10.5 从Unity到Android Studio 252

10.5.1 创建Unity工程 253

10.5.2 创建Android Studio工程 255

10.5.3 查看Log 256

10.5.4 发布程序 257

10.6 使用脚本编译游戏 258

10.6.1 使用脚本导出Android工程 258

10.6.2 使用脚本编译Android工程 261

10.7 获得签名证书的shal值 263

10.8 导入库文件 264

10.9 Plugins目录 266

10.10 代码混淆 266

10.11 百度地图实例 267

10.11.1 导入百度地图SDK 267

10.11.2 实现百度地图控件 268

10.12 触屏操作 271

10.13 小结 276

第11章 Unity新GUI完全攻略 277

11.1 Unity的GUI系统 278

11.2 Canvas(画布) 278

11.2.1 创建Canvas 279

11.2.2 设置Canvas 279

11.2.3 Canvas的屏幕适应模式 282

11.2.4 Canvas层级内UI控件的排序 282

11.2.5 Canvas的隐藏和显示 283

11.2.6 查找UI层级下的子控件 283

11.3 UI坐标对齐方式 283

11.4 Text(文字) 284

11.5 自定义字体 285

11.5.1 创建字体贴图 285

11.5.2 创建Shader 287

11.6 Image(图像) 289

11.6.1 创建Image控件 289

11.6.2 设置Alpha 290

11.6.3 设置Raycast Targe 290

11.6.4 设置UI图像为Sliced类型 291

11.6.5 设置UI图像为Tiled类型 292

11.6.6 设置UI图像为Filled类型 292

11.6.7 Mask(蒙版) 293

11.7 Button(按钮)控件 294

11.7.1 创建按钮 294

11.7.2 设置按钮状态变化 294

11.7.3 在编辑器中设置按钮触发事件 295

11.7.4 在脚本中定义按钮单击事件 296

11.7.5 判断按压按钮事件 297

11.8 Toggle(开关)控件 297

11.8.1 创建Toggle控件 297

11.8.2 Toggle组 298

11.8.3 Toggle控件的脚本 299

11.9 Raw Image控件 299

11.10 Slider(滑块)控件 301

11.10.1 创建Slider控件 301

11.10.2 改变滑块大小 301

11.10.3 使用脚本控制滑块 302

11.11 Input Field(文本输入)控件 302

11.12 Scroll View(卷轴视图)控件 303

11.13 Dropdown(下拉列表)控件 305

11.14 实用U1功能 306

11.14.1 判断是否单击了UI 306

11.14.2 拖动UI控件 306

11.14.3 在UI前面显示粒子特效 308

11.15 使用插件DOTween制作动画 309

11.15.1 在编辑器中设置DOTween动画 309

11.15.2 在脚本中设置DOTween动画 310

11.16 使用插件EnhancedScroller优化卷轴视图 311

11.16.1 创建数据模型 312

11.16.2 创建UI视图控制脚本 312

11.16.3 创建控制器 312

11.16.4 创建卷轴视图UI 313

11.17 小结 315

第12章 游戏开发中的美术工作流程 316

12.1 Unity和艺术家 317

12.2 视图操作捕捉 317

12.3 光照和渲染系统 318

12.3.1 光源类型 318

12.3.2 渲染管道 319

12.3.3 质量设置 320

12.3.4 实时阴影 320

12.3.5 环境光 322

12.3.6 Fog(雾) 323

12.3.7 直接照明与间接照明 324

12.3.8 Lightmapping(光照贴图) 326

12.3.9 环境反射采样 331

12.3.10 光照采样 332

12.4 色彩空间 335

12.5 物理材质 337

12.6 摄像机 340

12.7 地形 342

12.8 粒子特效简单教程 345

12.9 物理设置简单教程 350

12.10 游戏资源 352

12.10.1 贴图 352

12.10.2 在3ds Max中创建法线贴图 353

12.10.3 3ds Max静态模型导出 354

12.10.4 3ds Max动画导出 356

12.10.5 Maya模型导出 356

12.11 Unity两足动画系统 357

12.11.1 修改3ds Max两足动画骨骼 358

12.11.2 导入3ds Max两足角色到Unity 359

12.11.3 导入角色动画到Unity 359

12.11.4 表情动画 360

12.11.5 动画控制器 361

12.12 动画插件Skele 363

12.13 美术资源的优化 367

12.14 小结 367

第13章 Behavior Designer——行为树AI 368

13.1 行为树和AI 369

13.1.1 行为树插件的安装 369

13.1.2 简单的AI处理方式 369

13.1.3 状态机AI处理方式 370

13.1.4 Behavior Designer的行为树AI处理方式 371

13.2 行为树任务 372

13.2.1 任务返回值 372

13.2.2 Action(动作) 372

13.2.3 Composite(组合) 372

13.2.4 Conditional(条件) 374

13.2.5 Decorator(修饰) 375

13.3 行为树实例教程 375

13.3.1 主角的行为树 376

13.3.2 游荡的敌人 381

13.3.3 行为树的交互 382

13.4 行为树系统扩展 385

13.4.1 外部行为树 385

13.4.2 自定义任务 386

13.4.3 自定义共享数据类型 387

13.4.4 在脚本中设置行为树 389

13.4.5 在脚本中发送事件 389

13.5 优化 389

13.6 小结 390

第14章 玩玩PlayMaker 391

14.1 关于PlayMaker 392

14.1.1 优点和缺点 392

14.1.2 安装 392

14.2 PlayMaker的模块和工作机制 393

14.2.1 有限状态机 393

14.2.2 创建PlayMaker状态机 393

14.2.3 State(状态) 394

14.2.4 Event(事件) 394

14.2.5 Action(动作) 395

14.2.6 变量 396

14.2.7 发送事件 397

14.3 自定义Action 397

14.4 小结 400

附录A C#语言 401

A.1 C#基础 402

A.1.1 C#简介 402

A.1.2 运行控制台程序 402

A.1.3 类型 403

A.1.4 内置类型 403

A.1.5 标识符 404

A.1.6 语句和表达式 404

A.1.7 变量和常量 405

A.1.8 枚举 405

A.1.9 数学操作符 405

A.1.10 关系操作符 406

A.1.11 逻辑操作符 406

A.1.12 操作符优先级 407

A.1.13 方法 407

A.1.14 条件分支语句 408

A.1.15 循环语句 409

A.1.16 三元操作符 410

A.1.17 预处理 410

A.2面向对象编程 411

A.2.1 类 411

A.2.2 this关键字 412

A.2.3 封装 412

A.2.4 继承与多态 414

A.2.5 静态成员 417

A.2.6 通过字段名称序列化对象 417

A.3 字符串 418

A.4 数组和排序 420

A.4.1 创建数组 420

A.4.2 遍历数组 421

A.4.3 插入、删除、查找 421

A.4.4 排序 422

A.5 I/O操作 425

A.5.1 写文件 425

A.5.2 读文件 426

A.5.3 删除文件 427

A.5.4 读写bytes 427

A.6 委托 429

A.6.1 委托与事件 429

A.6.2 泛型委托 431

A.6.3 Action 432

A.7 小结 433

附录B 特殊文件夹 434

附录C Unity编辑器菜单中英文对照 436

相关图书
作者其它书籍
返回顶部