从零开始:快速入门Unity3D游戏开发

从零开始:快速入门Unity3D游戏开发

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

编辑推荐

快速掌握Unity游戏开发技能,顺利完成一款游戏的开发和发布。

内容简介

本书是指导初学者学习Unity 3D游戏开发的入门图书,书中详细讲解了场景搭建、脚本、物理系统、Mecanim动画系统、UI系统等初学者必须具备的Unity 3D游戏开发所需的基础知识,并演示了如何将这些知识运用到游戏中的实际案例,最后介绍了如何把游戏发布到不同的平台上,帮助读者掌握游戏开发和发布的全流程。

作者简介

作者康远英,新媒体技师学院专业老师,多年游戏设计、制作、运营相关的项目经验和教学经验。

国家级高技能人才培训基地建设项目数字游戏方向负责人。参与过蛮荒纪、恐惧之魂、天天K神仙、盗墓笔记、名将、商战项目、上古神殿等多个项目的研发。

章节目录

版权信息

内容提要

前言

第1章 初识Unity 3D

1.1 使用Unity 3D开发的游戏

1.2 为什么要选择Unity 3D开发游戏

1.2.1 拥有海量素材的Unity商店

1.2.2 支持多种主流游戏发布平台

1.3 Unity 3D和虚幻4引擎的对比

1.4 本章总结

第2章 Unity 3D基础的窗口、常识和组件

2.1 下载和安装Unity 3D

2.2 Unity 3D的基础窗口

2.2.1 Project窗口

2.2.2 Scene窗口

2.2.3 Game窗口

2.3 Unity 3D的基本常识

2.3.1 游戏对象

2.3.2 游戏对象的父子关系结构

2.3.3 游戏素材资源的导入和导出

2.3.4 场景文件——场景的基本单位

2.3.5 Unity 3D基础的游戏对象

2.4 Unity 3D的常用组件

2.4.1 Transform组件

2.4.2 Rigidbody组件

2.4.3 Collider组件

2.4.4 Sprite Renderer组件

2.4.5 Camera 组件

2.4.6 Light组件

2.5 本章总结

第3章 场景搭建

3.1 2D游戏场景搭建的准备工作

3.2 Tile Palette——Tilemap的功能窗口

3.3 Tilemap Collider 2D——2D场景的Collider组件

3.4 本章总结

第4章 脚本和C#的基础语法

4.1 设置开发环境

4.1.1 下载Visual Studio和开发工具包

4.1.2 设置Unity 3D的编辑器

4.1.3 创建并添加脚本

4.2 变量

4.2.1 变量的类型

4.2.2 定义变量

4.2.3 算术运算符

4.2.4 变量的访问权限

4.3 数组

4.4 函数

4.5 条件判断语句

4.5.1 if语句

4.5.2 if...else和if...else if...else语句

4.5.3 switch语句

4.6 循环语句

4.6.1 while语句

4.6.2 do...while语句

4.6.3 for语句

4.7 本章总结

第5章 脚本的工作机制与Unity 3D常用的函数和变量

5.1 面向过程和面向对象

5.1.1 如何面向对象

5.1.2 GetComponent函数

5.2 脚本的工作机制——生命周期函数

5.2.1 Awake和Start函数——初始化变量数值的函数

5.2.2 Update和FixedUpdate函数——更新游戏画面的函数

5.3 Unity 3D中常用的变量和函数

5.3.1 常用的变量

5.3.2 常用的函数

5.4 静态对象

5.5 常见的脚本错误和调试方法

5.5.1 C#的语法错误

5.5.2 对象没有进行初始化

5.5.3 无法添加脚本

5.6 本章总结

第6章 3D数学

6.1 笛卡儿坐标系和Vector对象

6.2 局部坐标系和世界坐标系

6.3 向量

6.3.1 什么是向量

6.3.2 向量的运算

6.3.3 向量的单位化

6.4 三角函数

6.5 本章总结

第7章 物理系统

7.1 游戏对象之间的碰撞检测

7.2 游戏对象之间的触发检测

7.3 Tag(标签)

7.4 使用刚体组件控制游戏对象的位移

7.5 射线检测

7.6 综合案例——制作3D滚动球

7.6.1 控制小球的位移

7.6.2 实现小球和宝石的触发检测

7.6.3 更新玩家获得的分数

7.6.4 判断游戏的输赢

7.7 本章总结

第8章 Mecanim动画系统

8.1 使用Animation编辑窗口制作动画片段

8.2 使用Animator Controller(动画状态机)控制动画片段之间的过渡

8.2.1 设置控制动画片段过渡的过渡条件和过渡参数

8.2.2 Animator Controller中用于控制动画片段播放时机的3种状态——Entry、Any State和Exit

8.3 使用Blend Tree(混合树)轻松实现动画片段的自由过渡

8.3.1 1D Blend Tree

8.3.2 2D Blend Tree

8.4 综合案例——制作2D角色控制器

8.4.1 场景搭建

8.4.2 制作角色的动画片段

8.4.3 控制角色的奔跑

8.4.4 控制角色的转向

8.4.5 控制角色的跳跃

8.4.6 创建动画片段的过渡条件

8.5 本章总结

第9章 UI系统

9.1 常用的UI组件

9.1.1 Image组件——显示图片

9.1.2 Text组件——显示文字

9.1.3 Rect Transform组件——设置UI组件的位置、旋转角度、缩放比例

9.1.4 Button组件——游戏中的按钮

9.1.5 Slider组件——调节游戏音量

9.1.6 Toggle组件——游戏的功能开关

9.1.7 Dropdown组件

9.1.8 自动布局组件——设置窗口布局

9.2 矩形工具

9.3 Canvas(画布)游戏对象——控制所有UI组件的显示方式

9.3.1 Canvas组件——控制所有UI组件的渲染顺序和渲染方式

9.3.2 Anchor和Canvas Scaler——控制UI组件在不同分辨率下的自适应

9.4 游戏UI的过渡动画

9.5 Audio Source组件——游戏BGM和UI音效

9.5.1 播放音效

9.5.2 Audio Source组件和UI组件的综合运用

9.6 游戏UI阶段练习案例——制作角色血槽

9.7 本章总结

第10章 2D平台跳跃游戏

10.1 脚本的命名规范

10.2 制作游戏主菜单界面

10.3 场景搭建

10.4 制作2D角色控制器

10.4.1 制作角色的动画片段

10.4.2 实现角色的物理动作

10.4.3 控制角色在不同物理动作下进行动画片段的过渡

10.5 相机的跟随

10.6 制作场景中的机关

10.6.1 制作地刺

10.6.2 制作砰击器

10.7 制作角色的生命值系统

10.8 制作场景中可拾取的物品

10.9 制作场景中敌人的AI系统

10.9.1 制作青蛙的AI系统

10.9.2 制作老鹰的AI系统

10.10 制作角色和敌人的伤害系统

10.10.1 制作角色的伤害系统

10.10.2 制作敌人的伤害系统

10.11 制作移动平台

10.12 制作游戏的音效

10.13 制作游戏的终点

10.14 本章总结

第11章 游戏发布

11.1 游戏发布前的准备工作

11.1.1 下载发布平台的安装包

11.1.2 游戏发布的基本参数设置

11.2 将游戏发布到不同的平台

11.2.1 发布到Windows和macOS平台

11.2.2 发布到Android平台

11.2.3 发布到iOS平台

11.2.4 发布到WebGL平台

11.3 本章总结

从零开始:快速入门Unity3D游戏开发是2022年由人民邮电出版社出版,作者康远英。

得书感谢您对《从零开始:快速入门Unity3D游戏开发》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
从零开始:C语言快速入门教程 电子书
以服务零基础读者为宗旨,图文并茂、通俗易懂,以实例引导读者学习C语言相关知识和实战技能。
从零开始:CINEMA 4D快速入门教程 电子书
本书从认识CINEMA4D软件界面开始,全书共分6章,包括初识CINEMA4D,认识CINEMA4D的软件界面,7种基础几何体练习等。以全实例为主线,讲解三维模型的创建、材质及材质的参数调整、场景及灯光的配置、效果图渲染的相关知识,可以帮助读者快速掌握CINEMA4D。
libGDX移动游戏开发从入门到精通 电子书
随着移动互联网的快速发展,移动端的游戏开发已经成为发展迅速、市场潜力巨大、前景诱人的开发方向。作为一种游戏引擎,libGDX让更多梦想加入游戏开发的人圆梦。本书全面介绍了使用libGDX进行游戏开发时所需要用到的知识,其中包括libGDX的详细介绍、libGDX的UI编程、libGDX的配套开发工具、libGDX中所遇到的一些问题的解决方案。本书并不局限于介绍libGDX编程的各种理论知识,而是从
PyQt编程快速上手:PythonGUI开发从入门到实践 电子书
PyQt实用工具书,帮助读者快速上手功能强大的开发工具,轻松掌握GUI开发技巧,创建各式各样的桌面程序。
Vue.js前端开发快速入门与专业应用 电子书
摸透Vue.js,无论是桌面端还是移动端,让你从容面对!