编辑推荐
Unity是一款功能强大且简单易用的游戏开发和虚拟现实开发平台软件。使用Unity可以把各种游戏素材或者虚拟现实素材,比如模型、贴图、动画等进行整合,结合Unity完美的引擎,和友好的程序开发平台,能制作出适合各种平台发布的游戏或者虚拟现实应用。本书共设计了15章内容,包含Unity软件使用基础、各项组件使用、程序开发基础和实例、各种平台发布技能等。在本书*14章还举了一个典型的游戏制作项目,让读者可以从零开始一步步制作出一款游戏。*15章则介绍了Unity2017版的新特性及使用。本书适合对Unity感兴趣,对游戏开发感兴趣的读者,也适合相关专业和院校作为游戏开发教材。
作者简介
刘杨国家动漫园技术研发工程师从业经历UnityUserGroup天津站组委会主席,获得UnityCertifiedDeveloper技术认证,在《天津科技》2015年第3期杂志发表了技术性论文。作为80后的一代身残志强的有志青年,从事软件开发多年,对计算机编程偏爱有加,在虚拟现实、增强现实领域有深入研究,开发完成的Unity项目多达几十项。2013年,独立完成了《中新生态城国家动漫园虚拟漫游》、《红橡虚拟样板间》iPad版本以及AR版本项目。2014年,先后完成了《英轩重工集团虚拟交互系统》、《天津警备区虚拟漫游交互系统》项目制作。2015年,完成了《泰达国际心血管病医院网站3D交互系统》,受到了泰达国际心血管病医院的一致好评;同年又在OCULUSDK2平台上自主研发发布了《杨柳青古镇虚拟漫游》项目。2016年,在HTCVIVE平台完成了《模拟火灾逃生》、《模拟地铁维修》项目的开发工作。2017年,完成了《医疗器械3D网上展馆》网页版项目、《未来智能修井车》Android版本项目。史明亮风台信息科技有限公司产品经理数字艺术家、作者、设计师、游戏制作人。互联网行业从业10余年,从软件产品到硬件产品都有涉猎,经历了从PC端时代到移动端时代的剧烈迁移。致力于设计与程序的融合,创作出色的数字艺术作品。主要作品有腾讯《袋鼠跳跳3D》AR、晨光《大鱼活了》AR、独立游戏《Backtothelight》。参展第三届东京画廊绿校年展、北京大声展。igotU旅行记录器硬件产品设计,以及751LiveTank艺术装置,曾参与设计“igotU‘旅行记录器等可穿戴设备。
目录
- * 1章 认识Unity
- 1.1 Unity的发展
- 1.2 用Unity开发的经典游戏案例
- 1.3 Unity在VR/AR领域里的应用
- 1.3.1 用Unity 能轻松构建VR
- 1.3.2 Unity 对于AR/VR行业的影响
- 1.4 如何安装Unity软件
- 动手操作:下载并安装Unity软件
- 动手操作:注册Unity账号
- 1.5创建* 一个Unity项目工程
- 动手操作:Unity新建工程
- 1.6 Unity Asset Store(Unity资源商店)
- 动手操作:使用Asset Store资源商店
- * 2章 Unity的操作界面
- 2.1 界面布局
- 2.1.1 Hierarchy层级视图
- 2.1.2 Project项目视图
- 2.1.3 Inspector检视视图
- 2.1.4 Game游戏视图
- 2.1.5 Scene场景视图
- 2.1.6 Console控制台视图
- 2.2 菜单栏
- 动手操作:Scene场景视图的操作
- 动手操作:Project Settings的使用方法
- 动手操作:导入/导出资源包
- 动手操作:查看Unity Manual和Scripting Reference
- 2.3 工具栏
- 动手操作:改变游戏场景
- 第3章 Unity场景设定
- 3.1 资源导入流程
- 动手操作:3D模型(含动画)的FBX导出
- 3.2 组件的使用
- 3.2.1 光源的使用
- 3.2.2 摄像机的使用
- 3.2.3 角色控制器
- 动手操作:建立角色控制器
- 3.2.4 天空盒
- 动手操作:导入天空盒
- 3.2.5 雾效果与水效果
- 动手操作:添加自然效果
- 3.2.6 音效
- 动手操作:添加音效
- 第4章 Unity物理引擎
- 4.1 刚体
- 4.2 碰撞体
- 4.3 关节
- 4.4 力场
- 4.5 布料
- 动手 操作:布料组件的应用(毯子效果)
- 4.6 物理引擎实例
- 动手操作:物理碰撞的应用
- 第5章 Shuriken粒子系统
- 5.1 Shuriken粒子系统概述
- 5.2 Shuriken粒子系统参数讲解
- 5.2.1 Initial(初始化模块)
- 5.2.2 Emission (发射模块)
- 5.2.3Shape(形状模块)
- 5.2.4 Velocity over Lifetime(生命周期速度模块)
- 5.2.5Color over Lifetime(生命周期颜色模块)
- 5.2.6 Size Over Lifetime(生命周期粒子大小模块)
- 5.2.7 Renderer(粒子渲染器模块)
- 5.2.8 Particile Effect(粒子效果面板)
- 5.3 Shuriken粒子系统特效插件
- 5.3.1 Ultimate VFX v2.7
- 5.3.2 Realistic Effects Pack 4
- 5.3.3 Magic Arsenal
- 5.4 Shuriken粒子系统案例
- 动手操作:运用粒子系统制作太阳日冕效果
- 动手操作:制作瀑布效果
- 动手操作:制作卡通爆炸效果
- 第6章 Mecanim动画系统
- 6.1 Mecanim动画系统概述
- 动手操作:准备Unity-chan人物
- 6.2 创建和配置Avatar
- 6.2.1创建Avatar
- 6.2.2配置Avatar
- 6.3 设置Animator Controller(动画控制器)
- 动手操作:设置动画控制器
- 6.4 设置Blend Tress(动作混合树)
- 动手操作:设置动画混合树
- 6.5 控制人物走路方向
- 第7章 Unity光照贴图技术
- 7 .1 光照贴图技术示例
- 动手操作:简单的光照渲染
- 7.2烘焙相关参数设置
- 7.2.1 Object(物体)参数设置
- 7.2.2 Light(光源)参数设置
- 7.2.3 Lighting视图下Scene选项卡
- 7.2.4 Lightmaps(光照贴图信息)选项卡
- 7.3 Real time GI
- 7.3.1 全局光照介绍
- 7.3.2 不同的GI绘图模式
- 7.4 Light map
- 7.5 GI与Lightmap
- 7.6光照贴图技术实例
- 动手操作:制作场景光照实例
- 第8章 C#编程基础
- 8.1 Hello World!
- 动手操作:我的* 一个C#程序
- 8.2 Unity第三方脚本编辑器
- 动手操作:更改脚本编辑器
- 8.3 MonoBehaviour类
- 8.3.1 必然事件
- 8.3.2 Collision事件
- 8.3.3 Trigger事件
- 8.4 GameObject类
- 8.4.1 Instantiate实例化
- 8.4.2 Destory销毁
- 8.4.3 GetComponent获取组件
- 8.4.4 SetActive显示/隐藏游戏对象
- 8.5 Transform类
- 动手操作:控制物体移动和旋转
- 8.6 Rigidbody类
- 8.7 Time类
- 动手操作:每隔5秒前进2米
- 8.8 Random类和Mathf类
- 8.8.1 Mathf类
- 动手操作:小球来回摆动
- 8.8.2 Random类
- 动手操作:改变颜色
- 8.9 Coroutine 协同
- 动手操作:协同程序
- 8.10 游戏实例: 扔骰子
- 第9章 Unity 5图形用户界面——UGUI
- 9.1UGUI图形用户界面系统
- 动手操作:将图片设置为Sprite
- 9.2 UGUI控件系统介绍
- 9.2.1 Canvas画布
- 9.2.2 Text 文本
- 动手操作:制作时钟
- 9.2.3 Image图像
- 动手操作:制作进度条
- 9.2.4 Raw Image原始图像
- 动手操作:RawImage播放视频
- 9.2.5 Button按钮
- 动手操作:Button的使用
- 9.2.6 Toggle 开关
- 动手操作:利用Toggle来开关音乐
- 9.2.7 Slider滑动条
- 动手操作:利用Slider滑动条来调整音量
- 9.2.8 InputField文本框
- 9.3Rect Transform矩形变换
- 9.3.1 Pivot 轴心点
- 9.3.2 Anchors 锚框
- 9.4 UGUI界面布局实例
- 动手操作:我的* 一个“游戏主菜单”界面
- * 10章Shader着色器基本知识
- 10.1认识Shader
- 动手操作:制作* 一个Shader
- 10.2 Shader基本语法
- 10.3 着色器的两种自定义
- 10.3.1 Surface Shader(表面着色器)
- 10.3.2 Vertex and Fragment Shader(顶点和片段着色器)
- 10.4 Unity Shader案例:制作金属材质
- * 11章游戏资源打包
- 11.1 认识AssetBundle
- 11.2 创建AssetBundle
- 动手操作:创建AssetBundle
- 11.3 下载AssetBundle
- 11.4 AssetBundle加载和卸载
- 动手操作:加载和卸载AssetBundle
- * 12章 跨平台发布
- 12.1 平台发布设置
- 12.2发布单机版游戏
- 12.3发布Android版游戏
- 动手操作:Java SDK的环境配置
- 动手操作:安装Android Studio
- 动手操作:配置Unity
- 动手操作:发布Android
- 12.4发布iOS游戏
- 动手操作:安装XCode
- 动手操作:发布iOOS
- 12.5发布WebGL
- 动手操作:发布WebGL
- 12.6 发布虚拟现实平台
- 动手操作:发布Oculus平台
- * 13章 Unity Services(中文翻译Unity服务)
- 13.1 Unity Services(中文翻译Unity服务)介绍
- 动手操作:在Unity开 发 者控制面板创建项目
- 13.2 Unity Ads(中文翻译Unity广告)
- 动手操作:使用Unity Ads(Unity广告)(中文翻译)
- 13.3 Unity Analytics(中文翻译Unity数据分析)
- 动手操作:使用Unity Analytics(Unity数据分析)(中文翻译)
- 13.4 Unity Certified(中文翻译Unity认证)
- 13.5 Unity Cloud Build(Unity云构建)
- 13.6 Unity Collaborate(Unity协同服务)
- 动手操作:使用Unity Collaborate
- 13.7 Unity IAP(Unity应用程序内置购买)
- 动手操作:使用Unity IAP
- 13.8 Unity Performance Reporting(Unity性能报告)
- 动手操作:使用Unity Performance Reporting
- * 14章Unity综合案例——炸弹人(双人战)
- 14.1 游戏介绍
- 14.2建立项目及准备素材
- 14.3场景搭建
- 14.4键盘控制炸弹人的行为
- 14.5投炸弹的交互制作
- 14.6创建爆炸
- 14.7让爆炸变得更大
- 14.8连锁反应
- 14.9炸墙壁
- 14.10 炸弹人死亡
- 14.11 游戏结束界面
- 14.12 本章小结
- * 15章 Unity 2017版的新特性及使用
- 15.1 Unity 2017版概述.
- 15.2 Timeline(时间轴)
- 动手操作: Timeline 的使用
- 15.3 Cinemachine(智能摄像机)
- 动手操作: Cinemachine的使用
- 15.4 Post-processing(后期处理)
- 15.4.1 Antialiasing(抗锯齿)
- 15.4.2 Ambient Occlusion(环境光遮蔽)
- 15.4.3 Screen Space Reflection(屏幕空间反射)
- 15.4.4 Depth of Field(景深特效)
- 15.4.5 Motion Blur(运动模糊)
- 15.4.6 Eye Adaptation(人眼调节)
- 15.4.7 Bloom(泛光特效)
- 15.4.8 Color Grading(颜色分级)
- 15.4.9 User Lut(用户调色预设)
- 15.4.10 Chromatic Aberration(色差)
- 15.4.11 Grain(颗粒)
- 15.4.12 Vigte(渐晕)
- 附录 C#基本语法
- 一、变量
- 动手操作:使用变量
- 二、运算符
- 动手操作:使用运算符
- 三、控制语句