NGUI创建Camera参数为Simple 2D的UI UI对象的结构UI Root(2D)
NGUI创建Camera参数为Simple 2D的UI UI对象的结构UI Root(2D)
使用NGUI创建的Camera参数为Simple 2D的UI,会在游戏的场景中生成1个名为UI Root(2D)的游戏对象,且此对象下还包含了3个其它对象:Camera、Anchor和Panel,如图1-4所示。本小节会分别介绍这4个游戏对象本文选自NGUI从入门到实战。

图1-4 在Hierarchy视图里查看新创建的UI游戏对象
1.4.1 UI Root(2D)
此游戏对象将负责控制UI控件的大小。在Hierarchy视图里选中UI Root(2D)对象,然后在Inspector视图里查看此游戏对象上的组件,如图1-5所示本文选自NGUI从入门到实战。

图1-5 在Inspector视图里查看UI Root(2D)对象的各组件
Transform组件在Unity的游戏对象上很常见,或者说所有的游戏对象上都有此组件,很平常就不做介绍了。而UIRoot(Script)组件是此游戏对象所特有的,其属性和介绍如下:
q Scaling Style:可以用于修改UI控件的缩放样式。
提示:此属性下有3个可选的参数:PixelPerfect、FixedSize和FixedSizeOnMobiles。
² PixelPerfect,将确保UI控件无论在何种游戏分辨率中,始终保持指定的像素大小。例如,指定像素大小为300×200,那么游戏在320×240的分辨率下,此UI控件就会很大,而在1920×1080的分辨率下,此UI控件就会很小。
² FixedSize,将确保UI控件无论在何种游戏分辨率中,始终于游戏视图保持指定的大小比例。即UI控件会随着游戏视图的缩放,而成比例的缩放。
² FixedSizeOnMobiles,将确保UI控件,在移动设备上的时候,保持指定的大小比例;在其它设备上时,保持指定的像素大小。
q Manual Height:当UI控件的缩放样式为FixedSize时,此属性就决定了UI控件是否需要成比例的缩放。例如,当游戏视图的高度大于这个属性设置的值时,UI控件会成比例的放大;当高度小于这个值时,UI控件会成比例的缩小;
提示:UI控件缩放时,控件的宽高比是恒定的。
q Minimum Height:当UI控件的缩放样式为PixelPerfect时,此属性就指定了游戏视图的最小高度,当游戏视图的高度值小于这个属性的设置值时,UI控件就会主动成比例的缩小;
q Maximum Height:当UI控件的缩放样式为PixelPerfect时,此属性就指定了游戏视图的最大高度,当游戏视图的高度值大于这个属性的设置值时,UI控件就会主动成比例的放大;
提示:游戏视图的分辨率比例多种多样,而UI控件仅仅以高度为依据,决定是否缩放控件,因此就有可能导致在不同的游戏分辨率比例下,出现UI控件可能会被视图“裁剪”的情况。为了应对这一情况,建议读者使用两种方法来避免。
方法一:将UI控制设置为正方形,即UI控件的宽度和高度相同;
方法二:为游戏视图指定游戏时的分辨率比例。指定的方法是,在Unity中单击Edit|Project Settings|Player命令,会弹出名为PlayerSettings的对话框,如图1-6所示。

图1-6 PlayerSettings对话框
展开PlayerSettings对话框里的Resolution and Presentation属性组,设置其中的Supported Aspect Ratios属性,如图1-7所示。

图1-7 Resolution and Presentation属性组
Unity默认支持的游戏视图分别率有很多,如4:3、16:10等等,如果希望游戏仅能在分别率4:3下运行,就取消对其它分辨率的复选本文选自NGUI从入门到实战。
NGUI创建Camera参数为Simple 2D的UI UI对象的结构UI Root(2D)的更多相关文章
- NGUI使用教程(2) 使用NGUI创建2D场景而且加入标签和button
1.创建2D场景 要使用NGUI创建2D场景,首先咱们必须新建一个项目,而且导入NGUI作为这个项目的插件,相信假设看过上一篇教程都知道怎么导入NGUI了,这里就不赘述,假设有疑问的能够去看上一篇教程 ...
- Unity NGUI 创建简单的按钮
Unity版本:4.5.1 NGUI版本:3.6.5 注意NGUI版本,网上的大部分教程都是2.x版本的,在步骤上面略有不同,此文适合初学者. 示例: 通过NGUI创建一个背景和按钮. 1.首先创建一 ...
- Linux 进程与线程三(线程比较--创建线程参数)
int pthread_equal(pthread_t th1,pthread_t th2); pthread_equal函数比较th1与th2是否为同一线程,由于不可以讲pthread_t数据类型认 ...
- [Effective JavaScript 笔记]第22条:使用arguments创建可变参数的函数
第21条讲述使用可变参数的函数average.该函数可处理任意数量的参数并返回这些参数的平均值. 如何创建可变参数的函数 1.实现固定元数的函数 书上的版本 function averageOfArr ...
- C#中创建线程,创建带参数的线程
线程操作主要用到Thread类,他是定义在System.Threading.dll下.使用时需要添加这一个引用.该类提供给我们四个重载的构造函 构造函数定义: 无参数委托 [SecuritySafeC ...
- Revit通过API创建共享参数
Revit共享参数是通过创建一个.txt类型的文件来保存相关信息,一旦与项目保存完毕之后,共享参数也就变成了项目参数(项目参数无法通过API创建),项目参数是保存在Revit项目里面的,所以此时这个. ...
- Unity3d之树木创建的参数设定
Unity3d之树木创建的参数设定 通常Unity3d创建树木经常会创建出很多奇葩的种类=_=,以下是创建出比较正常树木的基本参数 1:> 基本树干形状建立: 选择根建立分枝干设置分支干Di ...
- Fragment 创建 传递参数 跳转【典例】
Fragment一定要有一个无参的构造方法! 因为当Activity因屏幕旋转或者因内存不足被系统杀死时,会导致Activity被重新创建,而当Activity被重建时,FragmentManager ...
- springmvc后台接前端的参数,数组,集合,复杂对象等
springmvc后台接前端的参数,数组,集合,复杂对象等 参考地址:https://blog.csdn.net/feicongcong/article/details/54705933 常用的几种 ...
随机推荐
- 图论&数据结构——并查集
Wikioi 4246 NOIP模拟赛Day2T1 奶牛的身高 题目描述 Description 奶牛们在FJ的养育下茁壮成长.这天,FJ给了奶牛Bessie一个任务,去看看每个奶牛场中若干只奶牛的 ...
- 小白科普之JavaScript的数组
一.与其他语言数据的比较 相同点:有序列表 不同点:js的数组的每一项可以保存任何类型的数据:数组的大小是可以动态调整的 二.数组创建的两种方法 1) var colors = new ...
- php面试题之二——数据结构和算法(高级部分)
二.数据结构和算法 1.使对象可以像数组一样进行foreach循环,要求属性必须是私有.(Iterator模式的PHP5实现,写一类实现Iterator接口)(腾讯) <?php class T ...
- axis2 webservice 发布、调用与项目集成
发布 1.在apache官网下载axis2包,下载Binary Distribution和War Distribution两个zip. 2.将war放入tomcat webapps下部署.并输入 ht ...
- Xen虚拟机克隆实战
导读 在我们使用Xen虚拟化的时候,会经常创建虚拟机(VM),每次安装创建步骤比较繁琐,本文介绍通过virt-clone命令克隆xen虚拟机实战. 查看virt-clone命令是否存在 rpm -qa ...
- php增加对mysqli的支持
php增加对mysqli的支持 我在fedora下使用yum安装的php和mysql,但是发现php不支持myslqi,只能编译一个mysqli的扩展给php用了. 方法如下: 1.下载php 2 ...
- shell脚本调试之工具——bashdb
bash是Unix/Linux操作系统最常用的shell之一,它非常灵活,和awk.c++配合起来异常强大 以下使用一个测试脚本来说明使用bash调试的方法 test.sh #!/bin/bash e ...
- C语言 单引号和双引号的区别
最近的C语言课在教字符串,貌似N多同学搞不清楚单引号和双引号的区别,有人还以为在C语言里用哪个都可以...其实C语言中的单引号和双引号含义是一点也不一样滴... 1.含义不同. 用单引号引起的一个字符 ...
- 【Hibernate】Hibernate系列1之概述
概述 Hibernate简介 1.2.安装hibernate tools插件 1.3.HelloWorld示例 1.3.1.加入jar包 1.3.2.开发步骤 hibernate generator ...
- 41.把数组排成最小的数[Sort array to smallest value]
[题目] 输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的一个.例如输入数组{3,32, 321},则输出这两个能排成的最小数字321323.请给出解决问题的算法,并证明该 ...