美文网首页
2020-07-21 UGUI基础

2020-07-21 UGUI基础

作者: JOJO的冒险奇妙 | 来源:发表于2020-07-21 22:59 被阅读0次

2020/7/21

今天我学习了UGUI基础,主要是学习了一些基本控件

一、UGUI介绍

1、UI发展史

①Unity4.6版本以前,UI界面的创建都是通过OnGUI回调方法,这样只有在运行游戏后才能看见最终效果,开发UI界面不可视,开发效率很低。

②NGUI插件,拥有可视化界面,极大提高开发效率,但是与Unity引擎的兼容性不太好,运行不稳定。

③Unity UI,简称UGUI,是在4.6版本以后的引擎编辑器内置的UI,特点是UI界面搭建可视化,与引擎编辑器结合紧密,运行稳定,操作方便,开发效率高。(PS:据老师说这就是做NGUI插件的人被挖过去做的)

二、UGUI基础控件

在场景视图,单击右键选择UI,然后选择你需要的控件即可。创建后会生成一个Canvas(帆布),用于显示所有UI游戏对象,还会生成一个EventSystem,用于所有的事件相关内容。

1、Text控件

Text脚本组件

Text控件用于显示文本内容,创建完Text控件后,该控件有一个Text脚本组件,这里介绍一下各个属性

Text:这里填写的内容就是需要显示的内容

Font:表示字体

Font Style:表示字体风格,其中有四个可选项,Normal,表示正常风格,Bold,表示加粗,Italic表示斜体,Bold And Italic表示加粗和斜体

Font Size:表示字体大小

Line Spacing:表示行距

Rich Text:表示富文本,勾选上文本内容会识别标签

Alignment:表示排列方式

Align By Geometr:勾选表示按照几何排列

Horizontal Overflow:表示水平方向的溢出方式

Vertical Overflow:表示竖直方向的溢出方式

Best fit:表示最佳的适应方式,文本会根据文本域大小自动调节

Color:表示字体颜色

Material:表示材质

Raycast Target:勾选表示能用射线检测标签

2、Image控件

Image脚本组件

Image用于显示图片,创建Image控件后,该控件会有一个Image脚本组件,属性如下(相同的属性不再介绍)

Source Image:要显示的图片

ImageType:表示图片类型,这里有四个可选项,Simple表示简易类型,Sliced表示切分类型,Tiled表示平铺类型,Filled表示填充类型。

这里重点讲一下Filed填充类型

Filed填充类型

Fill Method:表示填充的方式,其中Horizontal表示水平填充,Vertical表示竖直填充,Radial 90表示90度的放射型填充,Radial 180表示180度的放射型填充,Radial 360表示360度的放射型填充

Fill Origin:表示填充的起点,Bottom表示底部,Top表示顶部,Left表示左边,Right表示右边

Fill Amount:表示填充的程度,这里表示的是一个0-1的值

通过Fill Amount,我们可以实现类型技能冷却、倒计时、进度条等等效果。

技能冷却

Clockwise:勾选表示按顺时针填充,不勾选表示按逆时针填充

Preserve Aspect:锁定图片比例

3、RawImage控件

类似于Image控件,也是用来显示图片,但是RawImage控件更适用于普通图片,而Image控件只能用于精灵图片

RawImage脚本组件

UV Rect:这里可以设置图片的显示方式,x和y的值在0-1之间,分别表示在水平和竖直左下角的起始位置,比如x:0.5 y:0.5,表示左下角的起点从图片中间部位开始,空余的部分会自动平铺填充(建议自己测试一下)。w和h表示按网格显示图片的行列。RawImage控件更适用于普通图片,就是因为精灵图片设置UV Rect值会产生偏差。

4、Button控件

Button控件用来表示按钮,创建之后会自动生成一个Text控件作为子物体,不需要的话也可以删除这个Text,创建Button控件还会添加一个Image脚本组件,用来存放图片,下面是Button脚本组件

Button脚本组件

Interactable:是否启用

Transition:表示过渡方式,增加游戏中和按钮的交互感。None表示没有过渡方式,Color Tint表示颜色色彩过渡,Sprite swap表示精灵交换过渡,Animation表示动画过渡

以上图精灵交换过渡为例

Target Graphic:表示该按钮使用的Image组件,默认是自己的

Highlighted Sprite:高亮时的精灵,表示鼠标悬停在按钮上显示的精灵

Pressed Sprite:按下时的精灵,表示鼠标点击按钮时显示的精灵

Disabled Sprite:按钮不可用世的精灵,表示按钮被禁用时显示的精灵

On Click():表示点击按钮事件调用回调方法的列表,其中Runtime,表示调用的时间,下方挂载了是有鼠标点击事件方法的脚本的对象,右边是该方法。(这里要求的方法是没有返回值和参数的,后面还有很多这种类似的事件)

5、Slider滑动条控件

创建后会有三个子物体,第一个,Background,用来显示滑动条的背景,第二个,Fill Area,用来显示填充域的样式,第三个,Handle Slide Area,用来显示滚动条上滑块的样式

Slider脚本组件

Fade Duration:表示延迟相应的时间

Fill Rect:表示填充的矩形区域

Handle Rect:表示滑块的矩形区域

Direction:表示滑块滑动的方向

Min Value:滑块的最小值

Max Value:滑块的最大值

Whole Numbers:表示滑块以整数单位移动

Value:滑动条控件的值

On Value Changed(Single):滑动条滑动的响应时间,这里的参数是float类型,参数就是滑动后控件的value值

6、Toggle开关控件

用来制作单选框或者复选框,创建的时候会有两个子物体,第一个,Background,用来表示复选框的背景,即未勾选状态时显示的图片,Background还有一个子物体,Checkmark,意为勾选标记,用来显示勾选状态时显示的图片。第二个,Label,标签,用于描述勾选的内容,可删。

Toggle脚本组件

Is On:表示是否勾选

Graphic:单选框选中或取消要显示或隐藏的文本和图像

Group:所属的组,这里重点介绍一下,如果我们要建立单选框就需要用到这个属性。

Toggle Group脚本组件

我们在任意一个游戏物体上添加一个Toggle Group脚本组件,然后所有需要构成组的Toggle控件的Group属性设置为该Toggle Group脚本组件,具体操作可直接拖拽有该组件的游戏对象到Group属性的位置,这样,所有该组的Toggle就能实现单选。

7、InputField控件

InputField控件用于用户输入的地方,比如玩家输入账号和密码。创建InputField控件会自动生成两个子物体,第一个,PlaceHolder,用来显示还没有输入状态下,要显示的提示内容,第二个,Text,用来显示用户输入的内容。创建的同时,InputField控件会有Image组件用来显示输入框的背景图片,以及Input Field脚本组件,如下图所示

InputField脚本组件

Text Component:引用的文本组件,默认是自己的子物体的组件

Text:输入框中真正的内容

Character Limit:字符数量的限制

Content Type:内容类型,这里可以限制输入的内容,比如整数或者小数,邮箱地址,密码类型等等

PlayerHolder:引用的提示信息的文本组件,默认也是自己子物体的组件

Caret Blink Rate:光标闪烁的频率

Caret Width:光标的宽度

Custom Caret Color:定制光标的颜色

Selection Color:选中输入框文本内容时的颜色

Hide Mobile Input:隐藏移动端的输入

Read only:设置输入框内容只读

On Value Changed(String):输入框内容改变时的回调方法,string类型的参数表示的就是改变后的输入框中的字符串

On End Edit(String):结束编辑时调用的回调方法,参数同上,结束编辑的方式有①点击输入框外②按回车键③手机端按回车或者下一项按钮

今天学习了7个基本控件,明天继续UI后续内容的学习。

相关文章

  • 2020-07-21 UGUI基础

    2020/7/21 今天我学习了UGUI基础,主要是学习了一些基本控件 一、UGUI介绍 1、UI发展史 ①Uni...

  • Unity基础-UGUI

    Canvas 渲染顺序遵循刷油漆规则(画家算法)依次由Render CameraDepth值、Sorting La...

  • Unity UI资料收集

    UGUI UGUI优化:批次合并源码分析及工具UGUI内核大探究(零)UGUI源码深度剖析 基于ugui组件封装,...

  • UGUI(一)【唐老狮】六大基础组件,三大基础控件

    Unity中的UI系统之UGUI [toc] 概述 六大基础组件 六大基础组件概述Canvas画布Canvas S...

  • UGUI 事件系统EventSystem流程图

    UGUI源码解析--EventSystem系统UGUI使用教程(一)事件系统EventSystem 整个UGUI的...

  • Unity之UGUI

    初识UGUI 如何实现UGUI图片拖动

  • Unity基础(24)-UGUI

    UGUI 控件是UGUI内置的,控件上面因因包含不同的组件而不同。 Image组件Image等价于NGUI的Spr...

  • UGUI基础:实现拖拽

    方案1:用unity 的拖拽接口1、UI继承IDragHandler2、实现OnDrag(PointerEvent...

  • UGUI基础:屏幕适配

    屏幕适配只是相对于UI而言的。 1、Canvas选择一定的分辨率,比如手机横屏通常选择1344*750。2、UI ...

  • Unity UGUI基础控件

    UGUI基础控件 Text控件 Text是用来显示文本的,在游戏界面当中显示文本大多数是用Text控件来实现的,T...

网友评论

      本文标题:2020-07-21 UGUI基础

      本文链接:https://www.haomeiwen.com/subject/zuabkktx.html