【解决】修改 UI界面渲染层级 的常见误区

开发平台:Unity 2021版本

问题描述


Unity 中管理 UI 上显示元素的前后层级关系大致为以下两种方式:

  • 方式一:修改UI元素队列顺序与层级
  • 方式二 :使用 Canvas 组件中的 Override Sort 属性配置

方式二 对应复杂的 UI 层级关系将常被开发者应用,但同时可是最容易出现忽略的误区 ------ 添加后其下的 Button\Toggle\Slider 的等组件不可用。

问题指出


观察 Unity 默认创建UGUI的GameObject对象。一个 Canvas 对象由以下组件构成:

  • RectTransform:管理 UI 在平面位置
  • Canvas:管理 UI 渲染模式
  • CanvasScaler:管理 UI 呈现分辨率
  • Graphic Raycaster:管理 UI 内交互组件触发

解决方法


补充 Canvas 组件修改层级时,应当同时考虑添加 Graphic Raycaster 组件构建射线触发交互组件的可能。

相关推荐
警醒与鞭策1 小时前
大模型对比
unity·性能优化·c#·游戏引擎·cursor
WarPigs2 小时前
switch和硬编码字典的等效性
unity·c#
没事写写笔记2 小时前
UniTask
unity
秦奈2 小时前
Unity复习学习笔记(八):动画、模型与寻路
笔记·学习·unity
呆呆敲代码的小Y3 小时前
【Unity工具篇】| Unity项目中如何使用LuBan插件,详细集成步骤
游戏·unity·游戏引擎·u3d·luban·免费游戏·unity工具
哈小奇12 小时前
Unity URP管线Linear空间丝绸材质
unity·游戏引擎·材质
哈小奇12 小时前
Unity URP管线Linear空间下玻璃效果
unity·游戏引擎
极客柒17 小时前
Unity 大地图高性能砍树顶点动画Shader
unity·游戏引擎
avi911121 小时前
UnityProfiler游戏优化-举一个简单的Editor调试
游戏·unity·游戏引擎·aigc·vibe coding·editor扩展
学嵌入式的小杨同学21 小时前
C 语言实战:动态规划求解最长公共子串(连续),附完整实现与优化
数据结构·c++·算法·unity·游戏引擎·代理模式