UGUI粒子特效层级

昨天,在做一个功能,结算功能,其中特效用到了粒子+Animation。

很尴尬的是特效被其他界面挡住了。

当然此时第一反应肯定是调整粒子的Renderer下面的Order in Layer。调整到高于遮挡的UI

调整完之后。粒子确实是没有被挡住。但是Animation控制的资源还是被挡住了。

然后找模型的Render 发现找不到Renderer组件相关属性。

最后解决是直接加脚本控制

public class UIEffectSort : MonoBehaviour 

 { 

 public int sortingOrder = 100;

 private Renderer[] m_EffectRend; 

 void Awake() 

 { 

//获取脚本下所有Renderer

    m_EffectRend = GetComponentsInChildren();

       //遍历Renderer 

       for (int i = 0; i < m_EffectRend.Length; i++)

            {

                m_EffectRend[i].sortingOrder = sortingOrder; //设置层级

            }

        }

    }

把此脚本挂在ui的粒子特效上面就可以。然后根据需要调整sortingOrder 。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容