Programming/Unity

[Unity] start, awake, update 함수 차이

byolee 2020. 1. 18. 20:59
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ss : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

 유니티에서 스크립트를 만들면 위와 같은 기본 틀로 생성된다.

스크립트 작성에서 필수적으로 알아야 할 Start, Update, Awake 함수 차이를 알아보자.

 

- Awake()

  • 게임을 시작하기 전에 변수 등을 초기화하기 위해 사용
  • 스크립트가 실행될 때 가장 처음 1번 실행되는 함수
  • 코루틴 사용이 불가능

- Start()

  • 1번만 실행되는 함수로 Update 함수보다 우선적으로 실행됨
  • 다른 스크립트들의 Awake()가 실행이 종료되면 실행됨
  • 반드시 스크립트가 활성화 되어 있어야 함

- Update()

  • 매 프레임마다 호출되는 함수
  • 게임 제작에 있어 핵심
  • 반드시 스크립트가 활성화 되어 있어야 함
  • 프레임마다 반복되므로 update를 과하게 사용하면 성능이 저하될 수 있음