目录
前言
UI的基本设计
一、Canvas
Canvas是一个画布
1->Rect Transform主要适用于定位
Canvas主要是对画布的基本设置
第一种是画布和相机没关系;第二种是画布永远都在相机的前方;第三种是画布作为场景的一部分。
Sort Order表示画布的层级顺序,哪个图层的数字大谁就在上方
2->Canvas Scaler主要是对画布比例的设置
3->Graphic Raycaster主要是用于人机交互
Text:文本框
Raw Image:
Panel:面板
Toggle:多选框
Slider:拖拉滑杆
Scrollbar:滚动条
Scroller View:滚动显示区域
Button:按钮
Dropdown:下拉列表框
Input Fileld:多行文字域
二、Text文本
Rect Transform:基于Rect Transform使用T快捷键来设置大上。
Text组件用于显示玩家名称/等级/一般属性/技能名称以及其他基本类型
Text常用属性
Text的对齐属性
Text组件在脚本中,Unity脚本做任何与UI相关的工作都要引用using
如果想要在Text中文本框中输入中文,需要自己从外部导入,Unity自身不支持中文,步骤如下:
1->在桌面上打开控制面板,查看方式中选择大图标
2->选择字体,进入之后复制需要的字体,粘贴到桌面上,之后再拉入到unity的字体文件夹中
3->右击选中Creat->TextMeshPro->Font Asset
4->在text中选中刚生成的中文字体即可
三、ImageAndRawImage
RawImage支持基本图片
Image中支持的是精灵图片
精灵图片:图片后面带三角,提高计算机运行速度
将普通图片转化成精灵图片,步骤如下:
四、Button
在On Click()中可以实现按钮交互功能
如果需要实现点击按钮实现文本框中字体变化
1->将Text拖入到上图位置
选择之后即可实现修改文本的功能
定义按钮的功能:
方法一:在属性面板下的Onclick下,指定点按钮时,对应的功能。这种方式定义非常方便,可以实现对按钮功能的定义,但不推荐使用这种方式
步骤:添加命名空间:using UnityEngine.SceneManagement;
加载场景:SceneManager.loadScene()
返回主菜单:SceneManagement.loadScene();
退出游戏:Application.Quit();
注意给按钮加载脚本时需要使用物体对象来调用脚本,所以创建一个空对象,让空对象挂载脚本从而实现功能
方法二:Button代码设置点击事件
GetComponent<Button>().onClick.AddListener(Clickfunction);
案例:通过单击按钮实现隐藏图片功能
五.EventSystem
上述只是讲解了通过按钮点击来实现页面跳转等等一些其他功能,引入EventSystem可以实现点击图片来跳转等等其他功能,详解如下。
UI中的事件脚本编写:在脚本中添加using UnityEngine.EventSystems事件相关命名空间
脚本需要继承事件相关“接口”,并实现对应方法,接口如下:
IPointerClickHandler:鼠标点击
IPointerDownHandler:鼠标按下
IPointerUpHandler:鼠标弹起
IPointerEnterHandler:鼠标进入
IPointerExitHandler:鼠标退出
//关于鼠标拖拽
IBeginDragHandler:开始拖拽
IDragHandler:拖拽中
IEndDragHandler:停止拖拽
六、AudioSource
声音:Unity支持的声音有AIFF WAV MP3 OGG等
(1)片段音乐:声音资源在代码中的类型是AudioClip,主要又分为背景音乐和音效音乐
public AudioClip audioClip;
void Start(){}
(2)声源
audioSource的常用属性及方法:
audioSource.Play():从头开始播放
audioSource.Stop():停止播放
audioSource.Pause():暂停播放
audioSource.UnPause():继续播放
audioSource.isPlaying():是否处于播放状态
audioSource.PlayOneSHot(audioClip):播放一个指定的片段且只有一次,主要特点是不会打断当前audioSource正在播放的音乐,会叠加在一起,并且不会修改,如果冲吊用也可以同时播放
添加音源需要加上Audio Source组件
Mute:静音 Play On Awake:一打开就播放 Loop:循环播放
往面板上添加音量滑杆(Slider)和静音(Toggle)按钮
首先需要将Audio Source组件加在一个空对象上,之后在画布上创建Toggle和Slider组件,将音效赋给音量滑杆和静音
控制音效的脚本首先得挂载到音效物体上