유니티 GetOrAddComponent

GetOrAddComponent란?

게임 개체에 특정 컴포넌트를 가져오거나 컴포넌트가 존재하지 않는 경우 게임 개체에 컴포넌트를 추가하는 편리한 유틸리티 메서드입니다. 컴포넌트를 수동으로 확인 및 추가하지 않고 게임 개체에 컴포넌트가 있는지 확인하려는 경우 일반적으로 사용됩니다.

using UnityEngine;

public static class ComponentExtensions
{
    public static T GetOrAddComponent<T>(this GameObject gameObject) where T : Component
    {
        T component = gameObject.GetComponent<T>();
        if (component == null)
        {
            component = gameObject.AddComponent<T>();
        }
        return component;
    }
}

예제

GameObject myObject = new GameObject("MyObject");
MyComponent myComponent = myObject.GetOrAddComponent<MyComponent>();