Unity MonoBehaviour 클래스

MonoBehaviour 클래스는 Unity에서 모든 스크립트가 상속받는 기본 클래스입니다. 이는 게임 개발에서 매우 중요한 역할을 하며, Unity의 에디터에서 게임 오브젝트에 스크립트를 연결할 수 있는 프레임워크를 제공합니다.

MonoBehaviour 클래스의 주요 기능

  • 자동 상속: C# 스크립트를 생성할 때 자동으로 MonoBehaviour에서 상속됩니다.
  • 유용한 이벤트: Start, Update와 같은 주요 이벤트에 대한 접근을 제공합니다.

코루틴

MonoBehaviour 클래스는 코루틴을 관리하는 기능도 제공하여, 특정 시간 동안 기다리거나 비동기적으로 작업을 실행할 수 있게 해줍니다. 이를 통해 메인 스레드를 차단하지 않고 여러 작업을 동시에 수행할 수 있습니다.

코루틴에 대한 자세한 내용은 코루틴 매뉴얼 페이지StartCoroutine 메서드를 참조 바랍니다.

이벤트 메시지

MonoBehaviour 클래스는 다양한 이벤트 메시지를 통해 특정 상황에 맞는 코드를 실행할 수 있는 기능을 제공합니다. 예를 들어:

이벤트 설명
Start 게임 오브젝트가 존재하기 시작할 때 호출됩니다.
Update 매 프레임마다 호출됩니다.
FixedUpdate 물리 타임스텝마다 호출됩니다.
OnBecameVisible 게임 오브젝트가 카메라의 뷰에 들어올 때 호출됩니다.
OnCollisionEnter 물리 충돌이 발생할 때 호출됩니다.
OnDestroy 게임 오브젝트가 파괴될 때 호출됩니다.

활용 예제

기본 MonoBehaviour 스크립트

아래는 간단한 MonoBehaviour 스크립트 예제입니다.

using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    void Start()
    {
        Debug.Log("게임이 시작되었습니다!");
    }

    void Update()
    {
        // 매 프레임마다 계속 호출됩니다.
        // 여기서 입력 처리 등을 할 수 있습니다.
    }
}

코루틴 사용 예제

다음은 코루틴을 사용하는 예제입니다.

using UnityEngine;
using System.Collections;

public class CoroutineExample : MonoBehaviour
{
    void Start()
    {
        StartCoroutine(MyCoroutine());
    }

    IEnumerator MyCoroutine()
    {
        Debug.Log("코루틴 시작");
        yield return new WaitForSeconds(2);
        Debug.Log("2초 후");
    }
}

이처럼 MonoBehaviour 클래스는 Unity에서 스크립트를 작성할 때 반드시 필요한 기초 지식을 제공합니다. 다양한 이벤트와 코루틴 기능을 활용하여 게임의 동작을 제어할 수 있습니다.