깨우기 대 시작

UnityAPI 스크립팅은 일련의 초기화 기능을 제공합니다.

초기화 함수는 스크립트 수명주기 시작 시 호출되는 함수입니다.

Unity의 초기화 함수는 'Awake' 및 'Start'입니다.

'Awake' 대 'Start'

'Awake'과 'Start'의 차이점은 실행 순서와 실행 조건입니다.

'Awake' 함수는 스크립트 활성화 여부에 관계없이 먼저 실행되며, 'Start' 함수는 스크립트가 활성화된 경우에만 실행됩니다. 두 함수 모두 첫 번째 'Update' 메서드 이전에 실행됩니다.

    void Awake()
    {
        Debug.Log("Awake runs first");
    }

    void Start()
    {
        Debug.Log("Start runds second");
    }

'Start' 함수는 코루틴이 될 수도 있습니다('void'을 'IEnumerator'로 바꾸고 'yield' 매개변수를 추가하여). 그러나 'Awake' 함수는 그럴 수 없습니다.

    IEnumerator Start()
    {
        //Wait 1 second before running the next code
        yield return new WaitForSeconds(1);

        Debug.Log("Start");
    }

테이크아웃

두 함수 모두 초기화 목적(예: 개인 변수 할당, 게임 개체 생성 등)에 유용하며, 조합하여 사용하면 다양한 시나리오를 구현하는 데 도움이 될 수 있습니다.

추천 기사
Unity의 MonoBehaviour 가이드
Unity에서 값을 초기화하는 런타임 시작 시 메서드
Unity 난독화 방법 및 해킹 방지 보호
C#의 유용한 키워드 Unity 목록
함수 및 메서드 호출 이해
Unity C# 스크립팅 언어 소개
Unity에서 더 나은 프로그래머가 되는 방법