http://blog.csdn.net/kingsea168/article/details/50252733
之前一直用NGUI开发界面,但看到现在的unity的新版本的UGUI也不错,这几天专门学习了一下,用过NGUI的人都知道NGUI的渲染顺序或者层级关系是Deapth(深度)决定,而UGUI的界面是用Canvas(画布)进行布局的,它的渲染顺序有所不同,下面我进行了总结:
Unity UGUI
1.Unity3d中的渲染顺序如下:
不同的Camera的Depth
相同Camera下的不同SortingLayer
相同SortingLayer下的不同Z轴/Order in Layer
2.改变控件之间的层级关系
(1)同一canvas下:
改变控件transform的SiblingIndex,
transform.GetSiblingIndex();
transform.SetSiblingIndex(int index); //index值越大,越后渲染,层级越大,越显示在前面
(2)不同Canvas下:
设置Canvas下的Sort Order //Sort Order值越大,越后渲染,层级越大,越显示在前面
最后附上我验证这一结论的demo: