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에서 스크립트를 작성할 때 반드시 필요한 기초 지식을 제공합니다. 다양한 이벤트와 코루틴 기능을 활용하여 게임의 동작을 제어할 수 있습니다.