UGUI Canvas 与 特效


UGUI Canvas SortingLayer决定了该Canvas下面的所有子物体的SortingLayer,一个Canvas下面的子物体按照上下顺序排序,越靠前的越容易被遮挡,当子物体拥有Canvas组件时,渲染队列将被重写,该物体的遮挡关系取决于当前物体的Canvas的orderInLyaer,所以UI应该优先按照Layer排序,然后同意Layer按照OrderInLayer进行排序,同一个OrderInLayer的Canvas下,按照上下顺序排序。
 
特效同样支持sortingOrder与sortingLayerName,当特效与UI的sortingLayerName一致时,调整特效的sortingOrder可以调整特效在UI中的显示位置,例如特效需要加在A的上面,特效的在orderLayerName一致的情况下,sortingOrder应该大于A的Canvas(从A往上找其父物体,第一个带Canvas的父物体的Canvas就是A的Canvas,A本身可以没有Canvas,此处Canvas类似于NGUI的panel概念)的sortingorder,如果特效要在A,B中间,那么A,B应该在2个不同的Canvas下面,特效的sortingorder也在A,B 2个Canvas的sortingOrder中间。
 
特效需要挂的脚本
   Renderer []renders  =  GetComponentsInChildren<Renderer>();
    if(renders == null)
     return;
    for(int i = 0; i < renders.Length; i++){
     renders[i].sortingOrder = order;
     renders[i].sortingLayerName = "Default";
    }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM