【解决】修改 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 组件构建射线触发交互组件的可能。

相关推荐
jtymyxmz10 小时前
《Unity Shader》10.1.4 折射
unity·游戏引擎
在路上看风景10 小时前
12. Burst
unity
平行云PVT12 小时前
实时云渲染解决UE5 像素流插件迁移及传输数据受限问题
unity·ue5·xr·实时云渲染·云桌面·像素流·云推流
熬夜敲代码的小N15 小时前
Unity WebRequest高级操作:构建高效稳定的网络通信模块
android·数据结构·unity·游戏引擎
萘柰奈16 小时前
Unity【小问题】----URP项目中加载AssetBundle中的预设体即使加载了依赖的材质依然是紫色的问题
unity·游戏引擎·材质
wonder1357917 小时前
UGUI合批分析和优化方法整理
unity·ugui
wonder1357919 小时前
UGUI鼠标点击到按钮响应流程的源码分析
unity·ugui
熊猫悟道1 天前
Unity shader 之,Shader内部时间离散处理
unity·游戏引擎·材质·着色器
PA_1 天前
unity Component-Based Architecture游戏框架
游戏·unity·游戏引擎
yi碗汤园2 天前
C#实现对UI元素的拖拽
开发语言·ui·unity·c#