"깊이"가 다른 게임개발자 허민영

유저에서 게임까지, 철학에서 코딩까지, 본질을 보는 게임개발

2025/07/25 4

Unity] Start함수 정밀 분석 완료

Start가 호출되는 타이밍은 Update 종류에 상관없이 Update전후로 호출될 수 있음. 1. FixedUpdate전 2. FixedUpdate후 3.Update전 4.Update후 5.LateUpdate전, 6.LateUpdate후 총 6번의 타이밍이 있음.이중 Update후 시작되는 Start가 호출된다면 해당 객체는 해당 Update를 바로 시작함.(이 부분 때문에 멘붕이었음)위의 내용은 여러개여도 적용됨. 즉, A,B,C 객체가 LateUpdate후 스타트되었다면 A의 Start-> A의 LateUpdate-> B의 Start-> B의 LateUpdate-> C의 Start-> C의 LateUpdate-> 순으로 진행됨프레임의 증가는 FixedUpdate전(Start타이밍)의 바로직전에 ..

Unity] Start함수의 정밀분석

테스트용 객체public class LifecycleTest : MonoBehaviour{ public GameObject LTest; //동일 클래스가 들어있는 프리팹 void Start() { Debug.Log($"Start - {Time.realtimeSinceStartup:F6}s (Frame: {Time.frameCount})"); Instantiate(LTest); //스타트 함수에 자기와 동일한 객체 생성 } private void Update() { Debug.Log($"Update - {Time.realtimeSinceStartup:F6}s (Frame: {Time.frameCount})"); } privat..

Unity] 라이프사이클 (Awake, OnEnable, Start)에 대한 실험결과

비활성 프리팹을 Instantiate 했을 경우 ㄴ 프리팹 내부에 스크립트는 Awake도 실행되지 않는다.(액티브를 대기)활성프리팹을 Instantiate 하고 다음 줄에서 SetActive(false); 실행했을 경우ㄴ Awake와 OnEnable이 실행되고 Start는 실행되지 않는다.*라이프사이클 메서드에 프레임로그를 확인*테스터의 Awake,OnEnable타임에 프리팹을 Instantiate한 경우ㄴ Awake, OnEnable는 0프레임, Start는 1프레임에 호출되었다.테스터의 Start타임에 프리팹을 Instantiate한 경우 ㄴAwake, OnEnable, Start가 동일하게 1프레임에서 호출되었다. 테스터의 Update타임에 프리팹을 Instantiate한 경우ㄴ첫번째 프레임에 생..