创新实践记录一

使用UGUI制作开始界面

一、UGUI概述

1.1常用组件

UGUI是从Unity4.6开始被集成到Unity编译器中的官方UI系统,具有灵活,快速和可视化兼容性好的特点。以下为常用的UGUI控件:

创新实践记录一_第1张图片

1.2创建UGUI控件

创建UI控件时,如果没有Canvas和EventSystem系统会自动创建。
在这里插入图片描述
Canvas画布,是所有UI控件的根类,所有UI控件都必须在Canvas上绘制。如果UI控件不在Canvas下,将无法正常渲染显示。
EventSystem则负责处理UI控件的操作。

1.3组件

所有的UI控件都有一个RectTransform组件,继承自Transform。
创新实践记录一_第2张图片
RectTransform:

Position, size, anchor and pivot information for a rectangle.

矩形的位置、大小、锚点和枢轴信息。

Transform:

Position, rotation and scale of an object.

物体的位置、旋转和比例。

二、开始菜单制作

2.1标题文字

因为没有专业的美工,网上的素材也很难找,免费的不尽人意,收费的买不起,最后还是采用文字标题。UGUI自带Text控件,用于显示文本:
创新实践记录一_第3张图片
Text:显示的文本
Character(字符)
Font:字体
Font Style:字体格式,粗体,斜体
Font Size:字体大小
Line Spacing:行间距,设置为0,存在多行时,将出现重叠
Rich Text:富文本,在Text中输入New Text,将显示红色的字体New Text
Paragrahp(段落)
Alignment:文本在控件中的对齐方式
Align By Geometry:使用字形几何的范围来执行水平对齐而不是字形度量
Horizontal Overflow:水平溢出(Wrap,Overflow,设置为Overflow后,文本长度超出控件宽度正常显示)
Vertical Overflow:垂直溢出(Truncate,Overflow)
Best Fit:最佳适配,勾选后,将可以设置字体的大小范围,当Text文本增加时,会自动缩小字体;当调节Text大小时,文字大小随着改变。勾选后,设置Font Size将无效
Color:字体颜色
Material:材质

2.2使用TxtMesh Pro


不过text本身功能不够丰富,作为标题美观度不够,因此我们引入TextMeshPro插件。以前的Unity版本可能要去商店下载,我这个自带了。从菜单栏Window > Package Manager中安装TextMesh Pro,第一次创建时,会弹出一个提示窗口:创新实践记录一_第4张图片
第一个是必要资源,第二个是可选的,这里我们全安装上。
UGUI的Text使用了一张字体贴图,Unity把所有需要显示的字符放到了一张图集中,字符的形状是通过像素定义的。当我们放大时,像素不够用就会出现文字变模糊的情况。
TextMesh Pro的Text使用了不同的技术来渲染文字,使用这种技术字符在渲染时不会因为缩放而造成字符模糊的情况,总是能够准确的渲染字符的边缘。这样更加美观

经过一些调整设置后就有了我们的标题。
创新实践记录一_第5张图片

2.3使用Button

button组成在这里插入图片描述

Button控件

创新实践记录一_第6张图片
Interactable:是否交互
Transition:过渡方式
有四种模式
1 None:无过渡
在这里插入图片描述
2 Color Tint:颜色过渡
创新实践记录一_第7张图片
Target Graphic:作用目标
Normal Color:默认颜色
Highlighted Color:高亮颜色,选中或鼠标进入
Pressed Color:按下颜色
Disabled Color:禁用颜色
Color Multiplier:颜色切换系数,系数越大变化越快
Fade Duration:淡出持续时间,颜色过渡时间
3 Sprite Swap:图片切换
创新实践记录一_第8张图片
Target Graphic:作用目标
Highlighted Sprite:高亮图片
Pressed Sprite:按下图片
Disabled Sprite:禁用图片
4 Animation:动画
创新实践记录一_第9张图片
Normal Trigger:默认触发器
Highlighted Trigger:高亮触发器
Pressed Trigger:按下触发器
Disabled Trigger:禁用触发器
Auto Generate Animation:自动生成动画控制器,添加成功自动添加Animator组件

Navigation:导航设置

事件绑定

首先要写编写按钮点击事件,再绑定到一个物体上
在这里插入图片描述
然后点击+号,再拖拽刚才的物体,最后选择按钮点击事件,即可完成一次事件绑定。
这里我创建三个按钮,分别用来完成进入AR界面,切换设置菜单,退出程序的功能。
以下是脚本。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;

public class MainMenu : MonoBehaviour
{
    public void Visit()
    {
        //SceneManager.LoadScene("HelloAR");
        SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex+1);
        //用场景名或当前场景的下一个序号完成切换
    }
    public void Exit()
    {
        //Debug.Log("Exit");
        Application.Quit();

    }
}

我和队友是两个场景在切换时可以直接用场景名也可以按序号,在编译设置时后面的序号就是场景序号。
创新实践记录一_第10张图片
以上是初步工作。

你可能感兴趣的:(创新实践记录一)