UGUI研究院之不添加摄像机解决UI与UI特效叠层问题

来源:互联网 发布:网络售药 京东 编辑:程序博客网 时间:2024/05/22 02:11
using UnityEngine;using System.Collections;using UnityEngine.UI; public class UIDepth : MonoBehaviour {public int order;public bool isUI = true;void Start () {if(isUI){Canvas canvas = GetComponent<Canvas>();if( canvas == null){canvas = gameObject.AddComponent<Canvas>();}canvas.overrideSorting = true;canvas.sortingOrder = order;}else{Renderer []renders  =  GetComponentsInChildren<Renderer>(); foreach(Renderer render in renders){render.sortingOrder = order;}}}}

原理就是设置 sortingOrder ,给需要修改order的UI元素挂上UIDepth脚本 。如下图所示,在UI容器中设置order。

注意: UI0 我设置了order =0 (可以不设置,因为默认所有UI的Order都是0)

           ParticleSystem 我设置了order =1 

           UI2 我设置了order =2 

所以效果是,UI2 挡住 ParticleSystem 挡住 UI0


0 0
原创粉丝点击