본문 바로가기

프로그램/유니티 스크립트 소스

[유니티 스크립트 소스] 자식 오브젝트들 얻기

728x90
반응형

게임오브젝트나 트랜스폼의 자식 오브젝트들을 얻는 소스입니다.

 

1. 메서드

메서드 : Transform[] GetChildren
public Transform[] GetChildren(Transform parent)
{
    Transform[] children = new Transform[parent.childCount];

    for (int i = 0; i < parent.childCount; i++)
    {
        children[i] = parent.GetChild(i);
    }

    return children;
}

 

메서드 : GameObject[] GetChildren
public GameObject[] GetChildren(GameObject parent)
{
    GameObject[] children = new GameObject[parent.transform.childCount];

    for (int i = 0; i < parent.transform.childCount; i++)
    {
        children[i] = parent.transform.GetChild(i).gameObject;
    }

    return children;
}

 

2. 데모

using UnityEngine; 

public class DemoGetChildren : MonoBehaviour 
{ 
    public GameObject m_PrntGo; 
    public Transform m_PrntTrans; 

    [SerializeField] private GameObject[] m_ChildrenGos; 
    [SerializeField] private Transform[] m_ChildrenTranses; 

  
    void Start() 
    { 
        m_ChildrenGos = GetChildren(m_PrntGo); 
        m_ChildrenTranses = GetChildren(m_PrntTrans); 
    } 


    public Transform[] GetChildren(Transform parent) 
    { 
        Transform[] children = new Transform[parent.childCount]; 

        for (int i = 0; i < parent.childCount; i++) 
        { 
            children[i] = parent.GetChild(i); 
        } 

        return children; 
    } 

    public GameObject[] GetChildren(GameObject parent) 
    { 
        GameObject[] children = new GameObject[parent.transform.childCount]; 

        for (int i = 0; i < parent.transform.childCount; i++) 
        { 
            children[i] = parent.transform.GetChild(i).gameObject; 
        } 

        return children; 
    } 
}

 

3. 결과

코더제로 유니티 스크립트 소스 자식 오브젝트들 얻기
그림. 자식 오브젝트들 얻기

 

728x90
반응형