【笔记】UnityGUI学习笔记
前言
Unity是一款跨平台的游戏引擎,可用于开发2D和3D游戏,支持多种个人电脑、移动设备、游戏主机、网页平台、增强现实和虚拟现实,其中在iOS和Android系统的游戏开发上特别受欢迎,许多人认为容易上手,并在独立游戏开发中广受欢迎。(维基百科)
通过VisualStudioInstaller安装VisualStudio及C#开发环境

通过UnityHub安装Unity编辑器
打开
UnityHub->Installs->Install Editor->选择一个版本->Install

创建Unity项目
- 打开
UnityHub->Projects->New Project

- 选择
3D(Build-In Render Pipeline)->指定项目名和存放路径->Create project

- 通过Unity编辑器打开项目

场景(Scene)
通过滚动鼠标滚轮实现场景视角缩放
通过按住鼠标中键实现场景视角平移
通过按住鼠标右键实现场景视角旋转
3D对象(3D Object)
创建3D对象
- 右键
Hierarchy层级窗口空白区域->3D Object->Cube

调节参数
- 通过
Transform调节变换参数 - 通过
Position调节位置 - 通过
Rotation调节旋转 - 通过
Scale调节缩放

通过工具栏的工具手动变换3D对象
- 通过移动工具拖拽手柄,实现指定方向位移

- 通过移动工具拖拽平面,实现指定平面位移

- 通过旋转工具拖拽手柄,实现指定方向旋转

- 通过缩放工具拖拽手柄,实现指定方向缩放

通过空对象为多个3D对象编组
- 右键
Hierarchy层级窗口空白区域->Create Empty

- 拖拽其他3D对象到空对象中,实现多个3D对象编组

材质(Material)
创建材质文件
- 右键
Project项目窗口空白区域->Create->Material

调节参数
添加颜色
- 通过
Albedo调节颜色

添加贴图
- 通过拖拽图片到
Albedo添加Texture贴图

通过正片叠底实现透明背景贴图
Shader->Particles

Standard Unlit

- 针对于透明背景贴图和黑色背景贴图,在材质的监视器中,
Rendering Mode改为Additive->Color Mode改为Multiply

- 通过拖拽图片到
Albedo添加Texture贴图

为3D对象添加材质
- 拖拽材质文件到层级窗口的3D对象上
- 拖拽材质文件到场景窗口的3D对象上
- 拖拽材质文件到已经选择为3D对象的监视器窗口上

摄像机(Cinema)
预览
- 通过
Game游戏窗口,预览摄像机画面

播放和停止
- 点击播放按钮,开始播放游戏
在播放游戏时调节监视器中调节的参数只能预览,不能保存

- 再次点击播放按钮,停止播放游戏

将摄像机视角移动到与当前视角相同位置
- 选中摄像机对象->
Game Object->Algin With View

音源(AudioSource)
添加音源组件
- 选中3D对象->
Add Component-Audio

Audio Source

调节参数
- 拖拽音频文件到
AudioClip

Mute:静音Play On Awake:游戏启动时自动播放Loop:循环播放
预制体(Prefab)
创建预制体
- 拖拽一个已经调节好参数的3D对象到项目窗口空白区域,保存为预制体

通过预制体创建一个新的对象
- 拖拽预制体到层级窗口

- 每当预制体参数发生改变,所有通过这个预制体创建的3D对象都会跟随发生改变

脚本(Script)
创建脚本文件
- 右键
Project项目窗口空白区域->Create->C# Script

编辑脚本文件
- 双击脚本文件会自动打开VsiualStudio进行编辑
每当VisualStudio中保存脚本文件,Unity都会立即重新编译脚本

应用脚本文件
- 拖拽脚本文件到已经选择为3D对象的监视器窗口上

脚本文件传递参数
- 数值类型、字符串类型、向量类型参数可以直接在监视器窗口上编辑

- 游戏对象类型可以通过拖拽3D对象的方式传递

物理系统
- 每个3D对象默认都有
Box Collider盒子碰撞器组件,表示已经受物理系统管理
添加刚体组件
- 选中3D对象->
Add Component-Physics

Rigidbody
每个拥有Rigidbody刚体组件的3D对象,都具有重力
Mass:质量,单位千克

预览

粒子系统
添加粒子系统组件
- 右键
Hierarchy层级窗口空白区域->Effects->Particle System

为粒子添加材质
创建材质文件
为粒子添加材质
- 拖拽材质到
Particle System的Rendierer的Material上
