首页 > 其他分享 >UGUI六大基础组件

UGUI六大基础组件

时间:2024-02-03 10:11:06浏览次数:25  
标签:六大 分辨率 模式 像素 UI 组件 UGUI DPI

Canvas对象上依附的组件

image-20240202191702897

Canvas : 画布组件,主要用于渲染UI控件

Render Mode:

image-20240202211257286

Screen Space - Overlay:屏幕空间,覆盖模式,UI始终在前

image-20240202193535089

  • Pixel Perfect:是否开启无锯齿精确渲染(性能换效果)

  • SortOrder:排序层编号(用于控制多个Canvas时的渲染先后循序

TargetDisplay:目标设备(在哪个显示设备上显示)

Screen Space - Camera: 屏幕空间,摄像机模式,3D物体可以显示在UI之前

image-20240202194527729

  • Render Camera:用于渲染UI的摄像机(如果不设置将类似于覆盖模式)

  • Plane Distance:UI平面在摄像机前方的距离,类似整体Z轴的感觉

  • Sorting Layer:所在排序层

  • Order in Layer:排序层的序号

World Space:世界空间,3D模式

image-20240202195420783

  • Event Camera: 用于处理UI事件的摄像机(如果不设置,不能正常组册UI事件

Additional Shader Channel: 其他着色器通道,决定着色器可以读取哪些数据

Canvas Scaler: 画布分辨率自适应组件,主要用于分辨率自适应

CannasScaler是画布缩放控制器,它是用于分辨率自适应的组件

它主要负责不同分辨率下UI空间大小自适应

它并不负责位置,位置有之后的RectTransform组件负责

UI Scale Mode

image-20240202211403446

Constant Pixel Size(恒定像素模式):无论屏幕大小如何,UI始终保持相同像素大小

image-20240202212957685

  • Scale Factor:缩放系数,按此系数缩放画布中的所有UI元素
  • Reference Pixels Per Unit:单位参考像素,多少像素对应Unity中的一个单位(默认一个单位为100像素)图片设置中的Pixels Per Unit设置会和该参数一起参与计算

image

Scale With Screen Size(缩放模式):根据屏幕尺寸进行缩放,随着屏幕尺寸放大缩小

image-20240202213609476

Reference Resolution:参考分辨率(美术出图的标准分辨率)缩放模式下的所有匹配模式都会基于参考分辨率进行自适应计算

Screen Match Mode:屏幕匹配模式,当当钱屏幕分辨率宽高比不适应参考分辨率时,用于分辨率大小自适应的匹配模式

image-20240202220037629

Expand:image

Shrink:

image-20240202221016602

Match Weight Or Height:

image-20240202221358238

Constant Physical Size(恒定物理模式):无论屏幕大小和分辨率如何,UI元素始终保持相同物理大小

image-20240202224053959

DPI:图像每英寸长度内的像素点数

Physical Unit:物理单位,使用的物理单位种类

Fallback Screen DPI:备用DPI,当找不到设备DPI时,使用此值

Default Sprite DPI:默认图片DPI

那么恒定物理模式和恒定像素模式有什么区别呢,

主要解决同一张图片在两台同尺寸不同DPI设备上表现的区别,应为图片尺寸是固定的,即占用的像素是固定的,那么在DPI较低的那台设备我们看起来会比DPI高的要大,在实际开发中这个模式很少使用

3D模式:只有在3D渲染模式下才会启用的模式,主要用于控制该模式下的像素密度

image-20240202225556412

  • Dynamic Pixels Per Unit:UI中动态创建的位图(列入文本)中,单位像素数(类似密度),调高可以增加文字的清晰度
  • Reference Pixels Per Unit:单位参考像素,多少像素对应Unity中的一个单位(默认一个单位为100像素)

Graphic Raycaster: 射线时间交互组件,主要用户控制位置和最齐方式

用于检测UI输入事件的射线发射器

它主要负责通过射线检测玩家和UI元素的交互,判断是否点击到了UI元素

image-20240202230125112

Ignore Reversed Graphics:是否忽略反转图形

Blocking Objects:射线被哪些类型的碰撞器阻挡(在覆盖渲染模式下无效)

Blocking Mask:射线被哪些层级的碰撞器阻挡(在覆盖渲染模式下无效)

RectTransform:UI对象位置锚点控制组件,主要用于控制位置和对其方式

EventSystem对象上依附的组件

image-20240202192641760

EventSystem: 玩家输入事件响应系统

管理玩家的输入事件并分发给各UI控件,所有的UI事件都通过EventSystem组件中轮询检测并作出相应的执行,如果没有它,所有点击、拖拽等行为都不会被响应

image-20240203095130639

First Selected:首选的游戏对象,可以设置游戏一开始的默认选择

Send Navigation Events:是否允许导航事件(移动/按下/取消)

Drag Threshold:拖拽操作的阈值(移动多少像素算拖拽)

Standalone Input MOdule: 独立输入模块组件,主要用于监听玩家操作

处理鼠标/键盘/触控器/触屏(新版Unity)的输入,输入的事件通过EvnetSystem进行分发

它依赖于EvnetSystem组件,他们两缺一不可

image-20240203095536298

Horizontal Axis:水平按钮对应的热键名(改名字对应Input管理器)

Vertical Axis:垂直轴按钮对应的热键名(该名字对应Input管理器)

Submit Button:提交(确定)按钮对应的热键名(改名字对应Input管理器)

Cancel Button:取消按钮对应的热键名(改名字对应Input管理器)

Input Actions Per Second:每秒允许键盘/控制器输入的数量

Repeat Delay:每秒输入操作重复发生率生效前的延迟时间

ForceModule Active:是否强制模块处于激活状态

标签:六大,分辨率,模式,像素,UI,组件,UGUI,DPI
From: https://www.cnblogs.com/blwjw/p/18004382

相关文章

  • 在K8s中,提供的DNS组件是什么?有什么特性?
    在Kubernetes(K8s)集群中,用于内部DNS服务的组件已经从早期的kube-dns过渡到了coredns。kube-dns(已弃用):在Kubernetes1.10版本之前,kube-dns是默认的集群内部DNS解决方案。它包含以下组件:etcd:存储DNS记录。kube2sky:在较早的版本中用于将Kubernetes服务转换为DNS记录,但在kube......
  • 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之TimePicker组件
    鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之TimePicker组件一、操作环境操作系统: Windows10专业版、IDE:DevEcoStudio3.1、SDK:HarmonyOS3.1+编辑二、TimePicker组件TextClock组件通过文本将当前系统时间显示在设备上。支持不同时区的时间显示,最高精度到秒级。子组件无。接口TimePic......
  • AlertManager集成自研组件
    Alertmanager配置global:resolve_timeout:5msmtp_smarthost:'smtp.163.com:25'smtp_from:'[email protected]'smtp_auth_username:'[email protected]'smtp_auth_password:'11111111'smtp_require......
  • react antd 组件取值的方法
    在React中使用AntDesign(antd)组件,可以通过不同的方式获取组件的值,具体取决于所使用的AntDesign组件和其相关的API。一般来说,大部分AntDesign组件都有value属性或onChange事件,可用于获取或监听组件的值。以下是几个常见的AntDesign组件的取值方法示例:1、Input输入框组件:......
  • 在K8S中,calico有哪些组件?
    在Kubernetes(简称K8S)中,Calico作为网络插件提供了容器网络解决方案和网络策略管理。以下是Calico的主要组件:FelixFelix是Calico的核心守护进程,在每个节点上运行,负责配置和维护本地网络策略、路由规则以及ARP表项等。CalicoCNI插件Calico的CNI(ContainerNetworkInterfa......
  • 第17天:信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等
    框架:简单代码的一个整合库,如果使用框架就只需要学习使用框架调用即可如:文件上传功能是需要很多代码来实现的,框架把这个代码进行封封装,调用即可影响:如果采用框架开发,代码的安全性是取决于框架的过滤机制 #Python-开发框架-Django&FlaskDjango1、识别插件2、Set-Cookie:expi......
  • UniGUI使用ADO组件、调用数据库的存储过程、生成EXECL表的例子
    UniGUI使用ADO组件、调用数据库的存储过程、生成EXECL表的例子(自己学习记录一下,不一定合理,仅供参考)本例子是使用ADO等组件连接一个云服务器的一个数据库,调用GetOrg存储过程,把机构信息展现把结果导出的一个EXECL表里,并下载把显示的HSate的值进行替换1表示正常,其他表示暂停......
  • 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之TextClock组件
    鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之TextClock组件一、操作环境操作系统: Windows10专业版、IDE:DevEcoStudio3.1、SDK:HarmonyOS3.1+编辑二、TextClock组件TextClock组件通过文本将当前系统时间显示在设备上。支持不同时区的时间显示,最高精度到秒级。子组件无。接口TextClock......
  • OpenHarmony 定义扩展组件样式:@Extend 装饰器
    说明:从APIversion9开始,该装饰器支持在ArkTS卡片中使用。装饰器使用说明语法@Extend(UIComponentName)functionfunctionName{...}使用规则●和@Styles不同,@Extend仅支持定义在全局,不支持在组件内部定义。●和@Styles不同,@Extend支持封装指定的组件的私有属性......
  • 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之TextPicker组件
    鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之TextPicker组件一、操作环境操作系统: Windows10专业版、IDE:DevEcoStudio3.1、SDK:HarmonyOS3.1+编辑二、TextPicker组件TextClock组件通过文本将当前系统时间显示在设备上。支持不同时区的时间显示,最高精度到秒级。子组件无。接口TextPic......