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 常用的几种 ...
随机推荐
- POJ 1191 棋盘分割
棋盘分割 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 11213 Accepted: 3951 Description 将一个 ...
- 山东省第四届acm.Rescue The Princess(数学推导)
Rescue The Princess Time Limit: 1 Sec Memory Limit: 128 MB Submit: 412 Solved: 168 [Submit][Status ...
- TCPIP三次握手详情
TCP正常建立和关闭的状态变化 TCP连接的建立可以简单的称为三次握手,而连接的中止则可以叫做 四次握手. 建立连接 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接. 第 ...
- spring所需包下载
1.进入http://repo.spring.io/webapp/search/artifact/选择artifacts,在搜过栏输入spring-framework,点击查询出来的表头artifac ...
- 搭建openfire Android 客户端学习和开发【二】spark源码导入eclipse
首先声明下 这是我在eoe上转载的 写的很好就摘抄了... 第一步 下载源码 svn下载,下载地址:spark:http://svn.igniterealtime.org/svn/repos/spar ...
- 15 条实用 Linux/Unix 磁带管理命令
导读 磁带设备应只用于定期的文件归档或将数据从一台服务器传送至另一台.通常磁带设备与 Unix 机器连接,用 mt 或 mtx 控制.强烈建议您将所有的数据同时备份到磁盘(也许是云中)和磁带设备中. ...
- 一起做RGB-D SLAM (1)
前言 2016.11 更新 增加了对16.04的支持. 整理了过时的代码. SLAM,即Simultaneous Localization and Mapping,中文译作同时定位与地图创建,是近几十 ...
- error: library dfftpack has Fortran sources but no Fortran compiler found解决方法
用pip install scipy 时提示 error: library dfftpack has Fortran sources but no Fortran compiler found 解决方 ...
- spring3 + mybatis + maven:junit测试错误
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component c ...
- iOS7总显示状态栏的解决方法
转载http://blog.csdn.net/langresser_king/article/details/18351021 2014年2月份开始,苹果需求开发者必须使用xcode5开发游戏和应用, ...