NGUI UIPanel中Depth、Render Q、Sort Order浅析

本文探讨了NGUI面板中的Depth、Render Q和Sort Order的概念。Depth影响UIDrawCall生成顺序,Render Q通过Material.renderQueue控制。Sort Order的优先级高于Depth,由Render.sortingOrder控制。NGUI的Sort Order相当于UGUI的Order in Layer,两者在SortingLayer相同的情况下同级。当混合使用UGUI和NGUI时,需将UGUI Canvas设置为Screen Space - Camera并指定对应相机。优先级关系总结为:Camera.Depth > SortingLayer > UGUI的Order in Layer = NGUI的Sort Order > Render Queue > NGUI的Panel的Depth。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Depth

深度。Panel中RenderQ于SortOrder默认情况下,数值越大图层越靠前。

Render Q

渲染

用的是Material.renderQueue。Depth控制着UIDrawCall的生成顺序,影响了RenderQueue的顺序。

Sort Order

排序顺序。其内部通过Render.sortingorder控制。它的优先级>depth。

UIPanel.cs脚本里: 

 public int sortingOrder
{
      get
    {
       return mSortingOrder;
    }
  
      set
    {
       if (mSortingOrder != value)
       {
           mSortingOrder = value;
           #if UNITY_EDITOR
           NGUITools.SetDirty(this);
           #endif
           UpdateDrawCalls();
       }

    }

 }

继续查找mSortingOrder的引用,发现在函数UpdateDrawCalls()。中使用了mSortingOrder

继续跟踪dc.sortingOrder

UIDrawCall.cs脚本中

public int sorting
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值