Unity UGUI层级

作者: 游戏创作者 | 来源:发表于2021-04-20 15:58 被阅读0次

    Author :JerryYang
    Create by 2020.03.24

    影响UI层级的因素很多,这里我们一起研究一下:

    1. 节点树中的顺序
    节点树中的顺序

    这一点相信大家都很清楚,在同一节点下,其他设置一致的情况时,越后创建的对象层级越高,如上图:Image2的层级比Image1高。这种情况下我们想要动态控制层级的时候可以通过以下API控制:

    SetAsFirstSibling  //设置到最底层
    SetAsLastSibling  //设置到最顶层
    SetSiblingIndex //设置到指定层
    
    2. Sorting Layers
    Sorting Layers
    越后面的越上层

    Image2 在节点树上层,但是他的Sorting Layer为Bottom,所以的层级在Image1的下面。

    3. Sort Order
    Sort Order

    我不动节点树中的顺序,分别给 Image1 和 Image2 挂上Canvas组件,然后把 Image1 上的Sort Order设置为1,Image1 上的 Sort Order设置为0,此时 Image1 的层级位于 Image2 之上。

    4. Plane Ditance

    Canvas距离相机的距离也会影响层级关系,如图:


    离相机的距离
    距离越远,层级越靠后

    上图Canvas的Plane Ditance 为0,Canvas (1)的Plane Ditance为10,因此Canvas在上层。

    1. 如果Sort Order不同,优先Sort Order;
    2. Plane Ditance的值如果和相机近裁剪(Near)面的值一样会导致Scrollview划不动。
    5. Z轴

    在UGUI中,Z轴不会影响他的渲染顺序。


    影响的优先级
    Sorting Layers > Sort Order > Plane Ditance > 节点树中的顺序

    相关文章

      网友评论

        本文标题:Unity UGUI层级

        本文链接:https://www.haomeiwen.com/subject/ydlelltx.html