본문 바로가기
Unity 유니티

유니티 Unity GetComponent 컴포넌트 찾는 함수

by 지나팩 2023. 7. 26.

Unity 엔진에서 GetComponent는 주어진 게임 오브젝트에서 특정 컴포넌트를 찾아오는 함수입니다.

게임 오브젝트에 붙어있는 스크립트나 컴포넌트를 가져올 수 있게 해주는 함수입니다.

T GetComponent<T>();

여기서 T는 가져오려는 컴포넌트의 타입을 나타냅니다. 이 함수를 호출하면 해당 게임 오브젝트에서 지정한 타입의 컴포넌트를 찾아옵니다. 만약 해당 컴포넌트가 없을 경우 null을 반환합니다.

 

만약 부모나 자식 오브젝트에서 컴포넌트를 가져오려고 한다면 아래 함수를 사용하시면 됩니다.

    GetComponentInParent<T>
    GetComponentInChildren<T>

예를 들어, 플레이어 캐릭터가 PlayerMovement라는 스크립트를 가지고 있을 때, 다음과 같이 GetComponent를 사용하여 해당 스크립트를 가져올 수 있습니다:

using UnityEngine;

public class PlayerController : MonoBehaviour
{
    private PlayerMovement playerMovement;

    private void Start()
    {
        // PlayerMovement 컴포넌트 가져오기
        playerMovement = GetComponent<PlayerMovement>();

        // playerMovement가 null이 아닌지 확인하여 사용
        if (playerMovement != null)
        {
            playerMovement.Move();
        }
    }
}

이렇게 하면 PlayerController 스크립트가 포함된 게임 오브젝트에서 PlayerMovement 컴포넌트를 찾아와서 playerMovement 변수에 할당하게 됩니다. 그 후에 해당 컴포넌트를 사용하여 플레이어의 이동을 조작할 수 있게 됩니다.

 

만약 부모 또는 자신을 포함한 자식 오브젝트에서 여러 개의 컴포넌트를 배열로 가져오고자 한다면 아래 코드를 사용하시면 됩니다.

Text[] texts = GetComponentsInParent<Text>();     //부모 오브젝트에 포함된 컴포넌트들 가져올때
Text[] texts = GetComponentsInChildren<Text>();	  //자신 포함 자식 오브젝트에 포함된 컴포넌트 가져올때

 

 

https://play.google.com/store/apps/details?id=com.goldenegg

 

골든 에그 - Google Play 앱

수박 게임류의 머지 게임입니다.

play.google.com

 

댓글