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.hqwc.cn/news/296485.html

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

相关文章

linux运行可执行文件,通过c语言调用java的main方法

前言&#xff1a;以前一直在做Android开发&#xff0c;在某本书上看过一句话“Android上面不只有App类的程序可以运行&#xff0c;能在linux下运行的程序&#xff0c;也可以在Android上面运行” 一.编写C语言部分代码 1.定义java.h头文件 #include <jni.h>#ifndef _JAV…

计算机网络概述(下)——“计算机网络”

各位CSDN的uu们你们好呀&#xff0c;今天继续计算机网络概述的学习&#xff0c;下面&#xff0c;让我们一起进入计算机网络概述的世界吧&#xff01;&#xff01;&#xff01; 计算机网络体系结构 数据传输流程 计算机网络性能指标 计算机网络体系结构 两个计算机系统必须高度…

大数据技术学习笔记(十一)—— Flume

目录 1 Flume 概述1.1 Flume 定义1.2 Flume 基础架构 2 Flume 安装3 Flume 入门案例3.1 监控端口数据3.2 实时监控单个追加文件3.3 实时监控目录下多个新文件3.4 实时监控目录下的多个追加文件 4 Flume 进阶4.1 Flume 事务4.2 Flume Agent 内部原理4.3 Flume 拓扑结构4.3.1 简单…

springcloud-gateway-2-鉴权

目录 一、跨域安全设置 二、GlobalFilter实现全局的过滤与拦截。 三、GatewayFilter单个服务过滤器 1、原理-官方内置过滤器 2、自定义过滤器-TokenAuthGatewayFilterFactory 3、完善TokenAuthGatewayFilterFactory的功能 4、每一个服务编写一个或多个过滤器&#xff0c…

ubuntu22.04+ROS2推荐匹配的gazebo版本

放大以后看到&#xff1a; 可以看到ros2推荐使用版本是humble-----匹配的是Ubuntu22.04LTS -------匹配gazebo Harmonic

Cannot resolve plugin org.springframework.boot:spring-boot-maven-plugin:2.6.4

我出现这个问题就是idea的设置里面的maven路径跟我本地的maven路径不一致&#xff0c;所以出现了这个问题。引入这个项目踩了一个多小时的坑&#xff0c;最终重装了一下maven&#xff0c;把它整理了下&#xff0c;终于好了。。。 把我重装maven的方法博客贴在这&#xff0c;这…

AndroidStudio无法新建aidl文件解决办法

我用的 AS 版本是 Android Studio Giraffe | 2022.3.1 Build #AI-223.8836.35.2231.10406996, built on June 29, 2023 右键新建 aidl 文件&#xff0c; 提示 (AIDL File)Requires setting the buildFeatures.aidl to true in the build file 解决办法 修改 app 的 build.…

2024年,我们要勇敢奔跑!

本“人民&#xff0b;体验官”推广人民日报官方微博文化产品《2024年是个什么年&#xff1f;》 图&#xff1a;来源“人民&#xff0b;体验官”推广平台 朋友&#xff0c;2023已经进入尾声阶段&#xff0c;很快新的一年——2024年就来了。这新的一年是新中国成立75周年、澳门回…

Python实现多个sheet表合并

Python实现sheet表的合并 代码展示&#xff1a; import pandas as pd# 读取Excel文件 excel_file pd.ExcelFile(1221001.xlsx)# 获取所有表单名 sheet_names excel_file.sheet_names print(f"合并的sheet表单如下&#xff1a;\n{sheet_names}") print("\n&q…

计算机是如何工作的(下)

4. 编程语言&#xff08;Program Language&#xff09; 本块内容主要是还原下我们已经熟悉的编程语言&#xff0c;即编程语言是如何和 CPU 指令对应起来的。 4.1 程序&#xff08;Program&#xff09; 所谓程序&#xff0c;就是一组指令以及这组指令要处理的数据。狭义上来说&…

前缀和+单调双队列+贪心:LeetCode2945:找到最大非递减数组的长度

本文涉及知识点 C算法&#xff1a;前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 单调双队列 贪心 题目 给你一个下标从 0 开始的整数数组 nums 。 你可以执行任意次操作。每次操作中&#xff0c;你需要选择一个 子数组 &#xff0c;并将这个子数组用它所…

游戏交易平台源码,游戏账号交易平台,手游交易平台PHP源码

源码介绍 游戏账号交易平台源码&#xff0c;平台内置几套模版&#xff0c;支持商品发布&#xff0c;支持自助广告&#xff0c;支持会员注册&#xff0c;支持在线支付&#xff0c;搭建起来运营当个副业也不错。 安装教程 1.亲测环境&#xff1a;LinuxNginx1.16.1PHP5.6Mysql5…