using UnityEngine;
public class SiblingTest : MonoBehaviour
{
public void ClickTop(GameObject obj) {
obj.transform.SetAsFirstSibling();
}
public void ClickBottom(GameObject obj)
{
obj.transform.SetAsLastSibling();
}
public void ClickMoveUp(GameObject obj)
{
int idx = obj.transform.GetSiblingIndex();
if (idx > 0)
obj.transform.SetSiblingIndex(idx - 1);
}
public void ClickMoveDown(GameObject obj)
{
int idx = obj.transform.GetSiblingIndex();
int count = obj.transform.parent.childCount;
if(idx < count -1)
obj.transform.SetSiblingIndex(idx + 1);
}
}
SetAsFirstSibling是快速置顶,等同于SetSiblingIndex(0)。
SetAsLastSibling是快速置底,等同于SetSiblingIndex(兄弟节点数 - 1)。
SetSiblingIndex 直接设置节点的下标。
这篇文章介绍了在Unity3D中使用C#控制游戏对象的层级顺序,包括使用SetAsFirstSibling将对象置顶,SetAsLastSibling置底,以及通过SetSiblingIndex动态调整对象在其父对象中的位置。这些方法允许开发者在场景中精确地管理游戏对象的显示顺序。
3739

被折叠的 条评论
为什么被折叠?



