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

news2024/9/24 11:28:28

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.coloradmin.cn/o/1335067.html

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

相关文章

Pytest+Requests+Allure实现接口自动化测试

一、整体结构 框架组成:pytestrequestsallure设计模式: 关键字驱动项目结构: 工具层:api_keyword/参数层:params/用例层:case/数据驱动:data_driver/数据层:data/逻辑层&#xff1a…

IP代理科普| 共享IP还是独享IP?两者的区别与优势

通俗地讲,共享IP就像乘坐公共汽车一样,您可以到达目的地,但将与其他乘客共享旅程,座位很可能是没有的。独享IP就像坐出租车一样,您可以更快到达目的地,由于车上只有您一个人,座位是您一个人专用…

本机ping不通虚拟机

windows下finall shell连不上虚拟机了,之前是可以的,然后ping虚拟机,发现也ping不通,随后到处找问题。 在本地部分,控制面板 ——>网络和Internet——>网络连接 , 可以看到 VMnet1和Vmnet8虽然都是已…

AIGC|什么是深度学习?

深度学习是近年来人工智能领域最热门的话题之一。它是一种通过模拟人脑神经网络工作原理,进行大规模数据处理和模式识别的机器学习方法。随着计算能力的提升和大数据时代的到来,深度学习在图像识别、语音识别、自然语言处理等领域取得了突破性进展&#…

TikTok用户群体分析:探索不同文化间的共通之处

随着社交媒体的崛起,TikTok作为一款短视频平台已经深刻影响了全球范围内的用户。不同文化、不同国家的人们在TikTok上分享着各自的生活、创意和娱乐,形成了一个多元而丰富的社区。 本文将深入分析TikTok用户群体,探索不同文化间的共通之处&a…

java面向对象编程(中级)

面向对象编程(中级) 1、包 (1) 什么是包? 在Java中,包(Package)是用于组织和管理类以及其他Java 程序元素的一种机制。它是一种命名空间,可以将相关的类和接口组织在一…

前端测试——端对端测试框架 Playwright 总结

在进行前端测试前,我们需要明确我们需要怎样的前端测试。 前端测试类型总结 前端应用测试分为几种常见类型: 端到端(e2e) :一个辅助机器人,表现得像一个用户,在应用程序周围点击,并验证其功能…

2024年【四川省安全员A证】及四川省安全员A证实操考试视频

题库来源:安全生产模拟考试一点通公众号小程序 四川省安全员A证是安全生产模拟考试一点通总题库中生成的一套四川省安全员A证实操考试视频,安全生产模拟考试一点通上四川省安全员A证作业手机同步练习。2024年【四川省安全员A证】及四川省安全员A证实操考…

vue3组件通信(父给子传参,子调用父的方法,父调用子的方法,顶层组件给底层组件传参,底层组件调用顶层组件的方法)

目录 1.父传子(父给子传参) 2.子传父(子调用父的方法) 3.父调用子的方法 4.顶层给底层传参,底层调用顶层的方法 5.模板引用 1.父传子(父给子传参) ①.步骤 父组件中给子组件通过绑定属性…

国内厉害的游戏开发公司有哪些?

中懿游游戏软件开发,中国有许多厉害的游戏开发公司,其中一些在国际上也享有盛誉。以下是一些在中国游戏开发领域中备受关注的公司: 腾讯游戏(Tencent Games): 作为中国最大的互联网公司之一,腾讯的游戏分支…

【鸿蒙应用ArkTS开发系列】- 沉浸式状态栏实现

文章目录 一、前言二、封装沉浸式状态栏管理类1、创建Demo工程2、封装状态栏管理类 三、编写页面实现沉浸式状态栏效果1、存储windowStage实例2、Page页面中实现沉浸式开启关闭功能2.1、开启沉浸式状态栏2.2、设置标题栏偏移量 一、前言 在应用开发中,页面跟状态栏…

算法练习Day20 (Leetcode/Python-回溯算法)

虽然看似进入了一个新章节,但其实还是前几天二叉树章节的延续。。 回溯算法 (以下内容摘抄自代码随想录): 回溯法解决的问题都可以抽象为树形结构,是的,我指的是所有回溯法的问题都可以抽象为树形结构&…

etcd-workbench一款免费好用的ETCD客户端,支持SSHTunnel、版本对比等功能

介绍 今天推荐一款完全免费的ETCD客户端,可以私有化部署: etcd-workbench 开源地址:https://github.com/tzfun/etcd-workbench Gitee地址:https://gitee.com/tzfun/etcd-workbench 下载 本地运行 从 官方Release 下载最新版的 jar 包&am…

详谈 springboot整合shiro

背景: 本章将进一步的落地实践学习,在springboot中如何去整合shrio,整个过程步骤有个清晰的了解。 利用Shiro进行登录认证主要步骤: 1. 添加依赖:首先,在pom.xml文件中添加Spring Boot和Shiro的相关依赖…

Unprocessing Images for Learned Raw Denoising

原文 RWA Image Dataset:the Darmstadt Noise Dataset Abstract 1、Introduction 1、传统图像去噪方法:分析图像属性、对噪声建模(传统方法好像总是这样,建立模型然后用数学方法贴近模型) TBD:找传统的…

开源自托管导航页配置服务Dashy本地搭建结合内网穿透远程访问

开源自托管导航页配置服务Dashy本地搭建结合内网穿透远程访问 简介1. 安装Dashy2. 安装cpolar3.配置公网访问地址4. 固定域名访问 简介 Dashy 是一个开源的自托管的导航页配置服务,具有易于使用的可视化编辑器、状态检查、小工具和主题等功能。你可以将自己常用的一…

网络编程--socket编程

这里写目录标题 套接字概念通信原理总结 预备知识网络字节序简介字节转换函数 IP地址转换函数为什么单独列出函数原型sockaddr结构体 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 套接字 概念 Socket本身有插座的意思,但他是进程之间网络通…

如何分析 JVM 内存瓶颈浅谈

背景: 当操作系统内存出现瓶颈时,我们便会重点排查那个应用占用内存过大。对于更深一步分析内存的使用,就进一步去了解内存结构,应用程序使用情况,以及内存如何分配、如何回收,这样你才能更好地确定内存的…

62.乐理基础-打拍子-二八

前置知识:61.乐理基础-打拍子-休止符打法-CSDN博客 通过前置知识,知道了四分音符、二分音符、附点二分音符、全音符以及它们各自对应的休止符拍子的打法,如下图,它们都是最简单的,因为它们都是一拍的整数倍&#xff0…

竞赛保研 基于YOLO实现的口罩佩戴检测 - python opemcv 深度学习

文章目录 0 前言1 课题介绍2 算法原理2.1 算法简介2.2 网络架构 3 关键代码4 数据集4.1 安装4.2 打开4.3 选择yolo标注格式4.4 打标签4.5 保存 5 训练6 实现效果6.1 pyqt实现简单GUI6.3 视频识别效果6.4 摄像头实时识别 7 最后 0 前言 🔥 优质竞赛项目系列&#xf…