NGUI基础-三大基础组件之Root组件

NGUI

NGUI(Next-Gen UI)是一款用于Unity游戏引擎的UI插件,它提供了一套功能强大、灵活易用的界面开发工具。在NGUI中,Root(根节点)是一个重要的概念。

基础组件之Root

Root是NGUI中的最高层级节点,它是整个界面的根节点,所有其他UI元素都是以Root为基准进行布局和渲染。Root节点通常是一个UI摄像机(UICamera)的父节点,UI摄像机用于绘制UI元素,并处理用户与UI的交互。

通过Root节点,可以设置UI界面的相关属性,如UI的缩放比例、旋转角度、屏幕适配方式等。同时,Root节点也是UI层级管理的重要依据,不同层级的UI元素可以作为Root的子节点,形成层次结构,方便控制UI元素的显示与隐藏,以及接收用户输入事件。

在NGUI中,Root节点有一些常用的参数。

Scaling(缩放样式):

这个参数决定了UI界面的缩放方式。NGUI提供了三种选项:

  • Flexible(灵活):UI元素将根据屏幕的大小自动调整,并保持相对比例,一般用于PC游戏。
  • Constrained(约束):选择Constrained适配方式后,UI元素将会被限制在一个特定的区域内,不会随着屏幕大小的变化而进行缩放。这样可以确保UI在不同尺寸的屏幕上能够保持固定的大小和位置。

  • Constrained on Mobiles(移动设备上的约束):选择Constrained on Mobiles适配方式后,UI元素将会在移动设备上被限制在特定的区域内,而在其他设备上则会根据屏幕大小进行灵活缩放。这样可以针对移动设备和非移动设备分别进行UI的适配控制。

Flexible(灵活模式):
Minimun Height/Maximun Height:

具体操作一下吧。

点击NGUI-create-Sprite

选择图集和图片。

选哪个图,哪个图就会在Game窗口呈现。

假如我们把窗口的Minimun Height/Maximun Height设置为700,1000,那么只要是在这个高度范围内,无论怎么拖拉Game窗口的高度,这个物体始终会保持原有的大小,分辨率不变,大家可以自行实验一下。

但如果小于Minimun Height/超过Maximun Height,就不会保持原有的大小,就会进行相应的缩放。

PS:一般用于PC端(分辨率可变的情况下)。

Shrink Potrait UI:

如果游戏是PC端竖屏游戏,那么不会根据高度,而是会根据宽度来进行缩放,具体的和上面差不多。

Adjust by DPI:

使用dpi(分辨率密度)做适配计算。建议勾选,缩放起来更准确。

关于dpi是什么可以看看这篇文章:

https://blog.csdn.net/m0_71469414/article/details/135030344?spm=1001.2014.3001.5501

Constrained 约束模式:

一般用于手机游戏,因为它很少需要缩放。
该模式下,屏幕按尺寸比例来适配,不管实际屏幕有多大 ,NGUI都会通过合适的缩放来适配屏幕。
这样在高分辨率上显示的UI就会被放大保持原有大小,但有可能会模糊,好处是各设备看到的UI和屏幕比例是一样的。

红框代表Game窗口的比例。

蓝框是由右边的Content Width/Height决定的。美术组制作UI的标准分辨率,一般是市面主流移动设备的分辨率。

Fit又是啥意思?

两个都勾选,不会被裁剪,但是有黑边,当适配宽高比大于实际宽高比时,就会按照宽度适配。

两个都不勾选,始终保证屏幕被UI填充满不会有黑边,如果两个都不勾选 ,可能会被裁剪。

如果做横屏游戏,建议把Content Height的Fit勾选上。屏幕比例变化时,按照高度来适配。(好处:图标大小不会改变)

 如果做竖屏游戏,建议把Content Width的Fit勾选上。屏幕比例变化时,按照宽度来适配。

如果既有横屏模式又有竖屏模式,建议两个都勾选。

如果想要始终填充,那就两个都不勾选。

需要注意的是背景图一定要考虑极限宽高比来出。最大宽高比:19.9:9

Constrained On Mobile(综合模式):

以上两种模式的综合体。
在PC和Mac等桌面设备上用Flexible模式。

在移动设备上用Constrained模式。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/400420.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【转】android 中如何限制 EditText 最大输入字符数

原文网址:http://blog.csdn.net/fulinwsuafcie/article/details/7437768 方法一: 在 xml 文件中设置文本编辑框属性作字符数限制 如:android:maxLength"10" 即限制最大输入字符个数为10 方法二: 在代码中使用InputFilte…

ibatis 中 $与#的区别

在sql配置中比如in(#rewr#) 与in ($rewr$) 在Ibatis中我们使用SqlMap进行Sql查询时需要引用参数,在参数引用中遇到的符号#和$之间的区分为,#可以进行与编译,进行类型匹配,而$不进行数据类型匹配,例如: sele…

【51单片机快速入门指南】4.3.3: MPU6050使用Mahony AHRS算法实现六轴姿态融合获取四元数、欧拉角

目录源码Mahony_6.cMahony_6.h使用方法测试程序main.c效果STC89C516 32MHz Keil uVision V5.29.0.0 PK51 Prof.Developers Kit Version:9.60.0.0 上位机:Vofa 1.3.10 移植自MPU6050姿态解算——Mahony互补滤波 —— 大写的小写字母 加入了输入数据范围的自动处理…

linux文件系统及bash基础特性

linux文件系统 一、根文件系统 linux被识别的第一个被称为根之间关联的文件系统叫做根文件系统(rootfs),其他分区要想被读到,需要挂载到根目录的某个挂载点(根的子目录)上。根文件系统至关重要,…

WordPress调用自带jquery的方法 ,使 $ 生效

<script>// jQuery.noConflict(); // 由于wordpress 添加了这一行&#xff0c;所以&#xff0c; $ 操作&#xff0c;会报错。(function ($) {function readyFn() {// Set your code here!!}$(document).ready(readyFn); })(jQuery);</script> https://www.kevin…

【51单片机快速入门指南】4.3.4: MPU6050使用Madgwick AHRS算法实现六轴姿态融合获取四元数、欧拉角

目录源码Madgwick_6.cMadgwick_6.h使用方法测试程序main.c效果STC89C516 32MHz Keil uVision V5.29.0.0 PK51 Prof.Developers Kit Version:9.60.0.0 上位机&#xff1a;Vofa 1.3.10 移植自AHRS —— LOXO&#xff0c;算法作者&#xff1a;SOH Madgwick 源码 为了避免所用R…

Hybris商品图片导入与压缩有关的配置.

1. 在电脑上安装 ImageMagick 软件&#xff08;windows平台还需要安装VC&#xff09;&#xff0c;下载路径&#xff1a;http://www.imagemagick.org/script/download.php#windows 在local.properies文件配置安装路径和配置文件路径&#xff1a; Windows版本的&#xff0c;安装…

RTP协议学习大总结从原理到代码

from:http://wenku.baidu.com/view/aaad3d136edb6f1aff001fa5.html 一、流媒体概念 流媒体包含广义和狭义两种内涵&#xff1a;广义上的流媒体指的是使音频和视频形成稳定和连续的传输流和回放流的一系列技术、方法和协议的总称&#xff0c;即流媒体技术&#xff1b;狭义上 的流…

poj 2507Crossed ladders 计算几何

链接&#xff1a;http://poj.org/problem?id2507 题意&#xff1a;哪个直角三角形&#xff0c;一直角边重合&#xff0c; 斜边分别为 X, Y&#xff0c; 两斜边交点高为 C &#xff0c; 求重合的直角边长度~ 思路&#xff1a; 设两个三角形不重合的两条直角边长为 a &#xff0…

响应式样式

/* ##PC##1281px或更高分辨率 */media (min-width: 1281px) {}/* ##笔记本或PC##1025px - 1280px */media (min-width: 1025px) and (max-width: 1280px) {//CSS}/* ##平板电脑/Ipad竖屏##768px - 1024px */media (min-width: 768px) and (max-width: 1024px) {//CSS}/* ##平板…

【机器视觉学习笔记】VS2015 安装 opencv_contrib并测试

目录opencv_contrib的获取主要工具编译 opencv编译 opencv_contribVisual Studio 编译配置新项目的环境添加包含目录添加库目录配置调试环境添加依赖项测试平台&#xff1a;Windows 10 20H2 Visual Studio 2015 opencv_contrib-3.4.12 参考文章&#xff1a; 添加OpenCV_contr…

Windows Server 2012 R2 或 2016 无法安装 .Net 3.5.1

租用阿里云ECS服务器的用户使用 Windows Server 2012 R2 或 Windows Server 2016 64位系统&#xff0c;发现在安装 .net framework 3.5.1 时报错&#xff0c;报错内容如下&#xff1a; 原因分析 找不到安装源文件。 解决办法 可以通过如下 PowerShell 脚本进行安装&#xff1a;…

PHP CURL 多线程 GET/POST 类

PHP CURL 多线程 GET/POST 类 2015-01-01 分类&#xff1a;技术文章 阅读(623) 评论(0)如果有需要更正或更高效的建议&#xff0c;欢迎在OSchina分享~\(≧▽≦)/~ http://www.oschina.net/code/snippet_1475115_44902 <?php /********************************************…

C#中打开设计视图时报未将对象引用设置到对象的实例

通常情况下&#xff0c;若是你将用户控件写好了放入窗体中&#xff0c;若是有不合理的代码&#xff0c;则会弹出错误提示框&#xff0c;不让你放。若是你之前只是随便加了一个用户控件&#xff0c;并且没有什么问题&#xff0c;但后来你又把控件改坏掉了&#xff0c;那么你打开…

C#线程调用带参数的方法,给控件赋值

System.Threading.Thread thread new System.Threading.Thread(() > { //各种业务 //定义一个委托 public delegate void ProcessDelegate(string a); if (this.lbStatus.InvokeRequired) { ProcessDelegate df new ProcessDelegate(AddStatus); this.Invoke(df, new obj…

Concept3D推出交互式3D地图平台

对于活动组织者而言&#xff0c;能够在不必实际旅行的情况下参观活动地点的想法非常具有吸引力&#xff0c;特别是对于日程安排繁忙的人员。Concept3D通过其交互式地图和身临其境的虚拟导览软件实现了这一点。 Concept3D平台的首要位置之一是棕榈泉会议中心&#xff0c;该中心支…

【机器视觉学习笔记】OpenCV C++ 调用笔记本摄像头

目录测试程序实验现象平台&#xff1a;Windows 10 20H2 Visual Studio 2015 opencv_contrib-3.4.12 转自【opencv七】利用opencv调用电脑摄像头 —— yuanCruise 测试程序 #include <opencv2/opencv.hpp> #include <iostream>using namespace cv;int main() {n…

linux文件分割(将大的日志文件分割成小的)

linux下文件分割可以通过split命令来实现&#xff0c;可以指定按行数分割和安大小分割两种模式。Linux下文件合并可以通过cat命令来实现&#xff0c;非常简单。 在Linux下用split进行文件分割&#xff1a; 模式一&#xff1a;指定分割后文件行数 对与txt文本文件&#xff0c;可…

深入分析 Java 中的中文编码问题

几种常见的编码格式 为什么要编码 不知道大家有没有想过一个问题&#xff0c;那就是为什么要编码&#xff1f;我们能不能不编码&#xff1f;要回答这个问题必须要回到计算机是如何表示我们人类能够理解的符号的&#xff0c;这些符号也就是我们人类使用的语言。由于人类的语言有…

APP图标生成工具

今天25学堂跟大家推荐一款非常有趣和简单的APP图标生成工具&#xff1a;Iconion Icon Generator&#xff08;iconion图标生成器&#xff09; 我们可以用它来创建美丽的扁平化图标&#xff0c;长投影图标&#xff0c;桌面图标&#xff0c;社会媒体图标和移动APP图标等&#xff0…