Unity3D4.6UGUI开发设计及案例讲解
发布时间:2021-08-29
word Unity4.6 UGUI开发设计与案例讲解
1. Unity4.6跟以前的版本的最大区别首先在于在层级视图中点鼠标右键时出现的弹出菜单上,它把以前许多的菜单项进展了归类,比如cube sphere capsule….等整合到“3D Object〞子菜单中,而且多出一个UI子菜单,它就是UI组件了。
当我们点击UI->Canvas时,就会在场景视图里创建一个画布,不过视图默认是3D显示方式,在Unity4.3以后,增加了一个2D与3D转换按钮,单击此按钮可在3D与2D显示样式之间转换。 UI是2D,为何还要3D呢,在做一些比拟复杂的项目时,给用户看时是2D,但我们编辑时,有时还是要用到3D模式的。 2. Canvas是画布,所有的UI组件就是绘制在这个画布里的,脱离画布,UI组件就不能用。 创建画布有两方式。一是通过菜单直接创建,二是直接创建一个UI组件时,会在创建这个组件的同时自动创建一个容纳该组件的画布出来。 不管那种方式创建出画布时,系统都会自动创建出一个EventSystem组件,这是UI的事件系统。
一.Canvas组件
1 Canvas组件的三种渲染模式
在Canvas中有一Render Mode属性,它有3个选项,分别对应Canvas的三种渲染模式:Screen Space – Overlay、Screen Space – Camera、World Space 2 Screen Space – Overlay:
此模式不需要UI摄像机,UI将永远出现在所有摄像机的最前面〔即在某个UI的前面是不能再添加其他组件的〕,就好似是给摄像机贴上了一层膜。它的最大好处是不需要摄像机,不需要灯光。
3 Screen Space – Camera:
此模式需要提供一个UICamera,它支持在UI前方显示3D模型与粒子系统等容。 不过此模式下,就需在中给它挂一个摄像机。
当挂上摄像机并选择3D显示模式时,我们选中这个摄像机,并移动它,可发现画布会跟随摄像机的移动而移动,且Game视图显示的UI其位置与大小均保持不变,如如如下图所示:
1 / 114
word
这种模式,虽然UI的显示效果与第一种模式没有什么两样,然而,因在画布与摄像机之间可放置三维物体或粒子系统,那么就可做出许多绚丽的特效。
这一项为哪一项设置Canvas与摄像机之间的距离,其值越大,可在画布与摄像机之间放很多的三维物体,默认是100,建议设置为100与200之间即可。
4 World Space:
这个就是完全3D的UI,也就是把UI也当成3D对象,如摄像机离UI远了,其显示就会变小,近了就会变大。
5 其它一些属性:
当有多个画布时,决定谁在前,谁先显示。
二.Canvas Scaler画布的大小
Ui Scale Mode〔大小模式〕
当我们把Canvas中的Render Mode设为Screen Space – Overlay 或Screen Space – Camera时,此Canvas Scale中的Ui Scale Mode〔大小模式〕就可用,且其中有3个选项:
2 / 114
word 1 Constan Pixel Size:固定像素尺寸
2 Scale With Screen Size:以宽度为标准缩放〔屏幕自适应特性〕
2.1 Reference Resolution:参考分辨率
在不同分辨率下,控件显示的大小有所不同,这要根据实际情况综合考虑。
2.2 Screen Match Mode:屏幕匹配模式
Match Width Or Heigt:匹配宽度或高度
此模式下会出现Match调节滑杆,调节其控块位置,也会影响UI元素显示的大小。 Expand:扩展 Shrink:收缩
3 Constant Physical Size:固定物理尺寸
三.Panel 面板
当我们初次创建Panel后,它会充满整个画布,如下左图:
此时通过拖动该面板控件的4个角点或四条边可调节面板的大小,如上右图
面板实际上就是一个容器,在其上可放置其他UI控件,当移动面板时,放在其中的