搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
Unity 3D虚拟现实游戏开发
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787302489740
  • 作      者:
    李婷婷主编
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2018
收藏
内容介绍

本书以Unity 5.x版本为例,结合大量游戏开发案例,从实战角度系统地介绍Unity 3D的使用方法、经验及游戏开发基础知识。

本书分为3部分。第1部分为基础知识篇(第1~9章)。第2部分为综合实践篇(第10、11章)。第3部分为VR&AR篇(第12、13章)。基础知识篇主要介绍Unity 3D基础知识,包括Unity 3D概述、操作界面、脚本编写、图形用户界面系统、三维漫游地形系统、物理引擎、模型与动画、导航系统及游戏特效等内容,从总体上对Unity 3D进行概要性介绍。综合实践篇主要通过2D卡牌游戏开发和3D射击游戏开发使读者对Unity 3D游戏开发有较全面的认识,掌握开发一般休闲游戏的能力。VR&AR篇主要介绍时下非常流行的虚拟现实及增强现实技术,通过实践案例使读者掌握VR和AR开发流程。每章均附有习题。

本书适合作为高等院校数字媒体技术、数字媒体艺术及相关专业的教材,同时也适合广大Unity 3D初学者以及Unity 3D游戏开发和研究人员参考。


展开
精彩书摘

第3章〖5〗Chapter 3Unity 3D脚本开发基础脚本是一款游戏的灵魂,Unity 3D脚本用来界定用户在游戏中的行为,是游戏制作中不可或缺的一部分,它能实现各个文本的数据交互并监控游戏运行状态。以往,Unity 3D主要支持3种语言: C#、UnityScript(也就是JavaScript for Unity)以及Boo。但是选择Boo作为开发语言的使用者非常少,而Unity公司还需要投入大量的资源来支持它,这显然非常浪费。所以在Unity 5.0后,Unity公司放弃对Boo的技术支持。目前,官方网站上的教程及示例基本上都是关于JavaScript和C#语言的,使用JavaScript语言更容易上手,建议初学者选择JavaScript作为入门阶段的脚本编辑语言。到了进阶阶段,可以改用C#语言编辑脚本,因为C#语言在编程理念上符合Unity 3D引擎原理,本章主要以JavaScript和C#语言为例讲解Unity 3D脚本设计。

3.1JavaScript脚本基础

Unity 3D中的JavaScript也称UnityScript,和基于浏览器的JavaScript有比较大的区别,JavaScript是一种由Netscape公司的LiveScript发展而来的原型化继承的面向对象类语言,并且是一种区分大小写的客户端脚本语言。

3.1.1变量

JavaScript有4种变量:

(1)  数值变量。数值是最基本的数据类型。例如:var a=1000;

var b=3.1415926;(2)  字符串变量。是由单引号或者双引号括起来的Unicode字符序列。

(3)  布尔值。只有两个值: true和false,用来表示某个事物为真还是为假。

(4)  数组。是数据的集合,数组中的每一个数据元素都有一个编号(下标),数组的下标是从0开始的。

3.1.2表达式和运算符

表达式是关键字、变量、常量和运算符的组合,可以用于执行运算、处理字符或测试数据。JavaScript的解释引擎可以计算表达式,并返回一个结果值。JavaScript的运算符分为〖1〗〖2〗〖1〗〖3〗以下6类。

(1)  算术运算符。指的是数学中最基本的加减乘除等运算。算术运算符需要两个操作数,因此也称二元运算符。假设有操作数a、b,它们的算术运算符如表3.1所示。表3.1算术运算符

算术运算符说明使用方法+两变量相加a+b-两变量相减a-b两变量相乘ab/两变量相除a/b%求余数a%b++变量做+1操作a=a+1--变量做-1操作a=a-1(2)  相等运算符。用来比较两个值,根据比较结果返回一个布尔值,广义的相等运算符包含以下4种: 

  相等运算符(==)。

  等同运算符(===)。

  不等运算符(!=)。

  不等同运算符(!===)。


展开
目录

目录

第1章初识Unity 3D1

1.1Unity 3D简介1

1.1.1Unity 3D的特色1

1.1.2Unity 3D的发展2

1.1.3Unity 3D的应用3

1.2Unity 3D下载与安装6

1.2.1Unity 3D下载6

1.2.2Unity 3D安装7

1.3资源管理14

1.3.1创建新项目14

1.3.2创建游戏物体15

1.3.3添加游戏物体组件16

1.3.4项目保存16

1.4Unity 3D游戏发布18

1.4.1发布到PC平台19

实践案例: PC平台游戏场景发布21

1.4.2发布到Web平台25

实践案例: Web平台游戏场景发布25

1.4.3发布到Android平台27

实践案例: Android平台游戏场景发布32

1.5本章小结36

1.6习题36

第2章Unity 3D界面37

2.1Unity 3D界面布局37

2.2Hierarchy视图38

2.2.1视图布局39

2.2.2操作介绍39

2.3Project视图39

2.3.1视图布局40

2.3.2操作介绍40[1][2][1][3]2.4Inspector视图41

2.4.1视图布局41

2.4.2操作介绍41

2.5Scene View视图42

2.5.1视图布局42

2.5.2操作介绍43

2.6Game View视图45

2.6.1视图布局45

2.6.2操作介绍45

2.7菜单栏46

2.7.1File菜单46

2.7.2Edit菜单46

2.7.3Assets菜单47

2.7.4GameObject菜单48

2.7.5Component菜单49

2.7.6Window菜单50

2.7.7Help菜单50

2.8工具栏51

2.9其他快捷键51

实践案例: 自由物体创建52

2.10资源管理56

2.10.1导入系统资源包58

2.10.2导入外部资源包59

2.10.3资源导出60

2.11Unity资源商店62

2.11.1Unity资源商店简介62

2.11.2Unity资源商店使用63

综合案例: 创建简单3D场景64

2.12本章小结69

2.13习题69

第3章Unity 3D脚本开发基础70

3.1JavaScript脚本基础70

3.1.1变量70

3.1.2表达式和运算符70

3.1.3语句72

3.1.4函数74

3.2C#脚本基础74

3.2.1变量74

3.2.2表达式和运算符77

3.2.3语句77

3.2.4函数79

3.3Unity 3D脚本编写80

3.3.1创建脚本80

3.3.2链接脚本81

3.3.3运行测试83

3.3.4C#脚本编写注意事项83

实践案例: 脚本环境测试85

实践案例: 创建游戏对象86

实践案例: 旋转的立方体90

综合案例: 第一人称漫游91

3.4本章小结96

3.5习题96

第4章Unity 3D图形用户界面97

4.1Unity 3D图形界面概述97

4.1.1GUI的概念97

4.1.2GUI的发展97

4.2OnGUI系统98

4.2.1Button控件98

4.2.2Box控件102

4.2.3Label控件103

4.2.4Background Color控件104

4.2.5Color控件105

4.2.6TextField控件106

4.2.7TextArea控件107

4.2.8ScrollView控件108

4.2.9Slider控件109

4.2.10ToolBar控件111

4.2.11ToolTip控件111

4.2.12Drag Window控件112

4.2.13Window控件113

4.2.14纹理贴图115

4.2.15Skin控件116

4.2.16Toggle控件119

4.3UGUI系统120

4.3.1Canvas121

4.3.2Event System122

4.3.3Panel 控件123

4.3.4Text控件123

4.3.5Image控件 124

4.3.6Raw Image控件124

4.3.7Button控件125

4.3.8Toggle控件126

4.3.9Slider控件127

4.3.10Scrollbar控件127

4.3.11Input Field控件128

实践案例: 游戏界面开发130

4.4本章小结136

4.5习题136

第5章三维漫游地形系统137

5.1地形概述137

5.2Unity 3D地形系统创建流程138

5.2.1创建地形138

5.2.2地形参数138

5.3使用高度图创建地形139

实践案例: 采用高度图创建地形139

5.4地形编辑工具141

5.4.1地形高度绘制141

5.4.2地形纹理绘制142

5.4.3树木绘制143

5.4.4草和其他细节144

5.4.5地形设置145

5.4.6风域146

5.5环境特效147

5.5.1水特效147

5.5.2雾特效148

5.5.3天空盒149

综合案例: 3D游戏场景设计150

5.6本章小结161

5.7习题161

第6章物理引擎162

6.1物理引擎概述162

6.2刚体162

6.2.1刚体添加方法163

6.2.2刚体选项设置163

实践案例: 刚体测试164

6.3碰撞体167

6.3.1碰撞体添加方法167

6.3.2碰撞体选项设置167

6.4触发器170

实践案例: 碰撞消失的立方体171

6.5物理材质174

实践案例: 弹跳的小球175

6.6力177

实践案例: 力的添加177

6.7角色控制器179

6.7.1添加角色控制器179

6.7.2角色控制器选项设置179

6.8关节180

6.8.1铰链关节180

6.8.2固定关节181

6.8.3弹簧关节181

6.8.4角色关节182

6.8.5可配置关节182

6.9布料184

6.9.1添加布料系统184

6.9.2布料系统属性设置184

6.10射线185

实践案例: 拾取物体185

6.11物理管理器187

综合案例: 迷宫夺宝188

6.12本章小结194

6.13习题194

第7章模型与动画195

7.1三维模型概述195

7.1.1主流三维建模软件简介195

7.1.2三维模型导入Unity 3D196

7.2Mecanim动画系统200

7.3人形角色动画200

7.3.1创建Avatar201

7.3.2配置Avatar202

7.3.3人形动画重定向202

7.4角色动画在游戏中的应用203

7.4.1Animator组件203

7.4.2Animator Controller203

7.4.3Animator动画状态机204

实践案例: 模型动画204

7.5本章小结208

7.6习题208

第8章导航系统209

8.1Unity 3D导航系统209

8.1.1设置NavMesh209

8.1.2烘焙209

8.1.3设置导航代理211

实践案例: 自动寻路212

8.2障碍物214

实践案例: 障碍物绕行214

8.3本章小结216

8.4习题216

第9章游戏特效217

9.1粒子系统217

9.1.1粒子系统概述217

9.1.2粒子系统属性217

实践案例: 尾焰制作225

实践案例: 礼花模拟227

实践案例: 火炬模拟228

实践案例: 喷泉模拟231

9.2光影特效234

9.2.1光照基础234

9.2.2阴影238

实践案例: 光照过滤239

9.3音乐特效241

9.3.1导入音效241

9.3.2播放音效241

实践案例: 背景音乐播放243

综合案例: 万圣节的尖叫246

9.4本章小结251

9.5习题251

第10章二维卡牌游戏开发253

10.1正交摄像机253

10.2精灵254

10.2.1精灵的实现254

10.2.2精灵的尺寸255

10.2.3精灵渲染器255

10.2.4图片导入设置256

10.2.5精灵编辑257

10.3二维物理系统257

10.3.1刚体257

10.3.2碰撞体258

10.3.3Joint 2D261

实践案例: 帧动画264

综合案例: 二维卡牌游戏开发265

10.4本章小结277

10.5习题277

第11章3D射击游戏开发278

11.13D射击游戏构思278

11.23D射击游戏设计278

11.33D射击游戏实施279

11.3.1项目准备279

11.3.2武器设定283

11.3.3子弹设定286

11.3.4射击动画293

11.3.5射击功能298

11.3.6游戏优化299

11.3.7游戏发布300

11.4本章小结301

11.5习题302

第12章虚拟现实应用开发303

12.1虚拟现实概述303

12.1.1虚拟现实概念303

12.1.2虚拟现实系统基本特征303

12.1.3虚拟现实系统分类303

12.1.4虚拟现实系统组成304

12.1.5虚拟现实应用305

12.2虚拟现实开发软件及平台307

12.2.1Virtools307

12.2.2Quest 3D307

12.2.3VRPlatform307

12.2.4Unity 3D308

12.2.5Unreal Engine4309

12.3虚拟现实开发设备310

12.3.1Oculus Rift310

12.3.2Microsoft HoloLens313

12.3.3Gear VR314

12.3.4HTC Vive314

实践案例: 交互式虚拟漫游326

12.4本章小结333

12.5习题333

第13章增强现实开发334

13.1增强现实概述334

13.1.1增强现实概念334

13.1.2增强现实原理334

13.1.3增强现实应用335

13.1.4增强现实开发插件335

13.2Vuforia发展历程335

13.3Vuforia核心功能336

13.3.1图片识别336

13.3.2圆柱体识别336

13.3.3多目标识别337

13.3.4文字识别337

13.3.5云识别337

实践案例: AR动物开发338

13.4本章小结347

13.5习题347

参考文献348


展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证