C# 유니티 함수 Invoke & InvokeRepeating

728x90

Invoke()함수는 시간 딜레이를 주고 함수를 실행시키는 함수이다.

위 스크립트르 보면 SpawnObject() 메소드를 실행하면 target이라는 GameObject가 생성되는데

해당 함수가 실행되기 전 Start() 메소드내 Invoke()가 먼저 실행되게 된다.

Invoke()는 호출string(이름)과 몇 초 후 실행될 것인가 하는 Time Delay라는 2가지 매개변수를 가진다. 

즉, 스크립트가 실행되면 2초 후 SpawnObject 메소드가 호출되게 된다.

InvokeRepeating() 함수는 Invoke()를 반복해주는 함수이다.

InvokeRepeating()은 ("메서드 이름", 시간 딜레이, 반복 시간 단위)라는 3가지 인수를 가지고 있다.

위의 스크립트를 보면, SpawnObject 메서드를 2초 후 실행하고, 매 1초마다 반복해서 실행하는 것을 의미한다. 

해당 스크립트는 계속 실행되는데 이를 멈추려면

InvokeRepeating() 메서드 밑에 CancelInvoke("SpawnObject"); 를 추가해주면 된다.

728x90

'게임 프로그래밍 > C#' 카테고리의 다른 글

C# Switch statements Switch문  (0) 2021.08.04
C# 열거형 Enumerations  (0) 2021.08.04
C# 유니티 함수 Instantiate  (0) 2021.08.03
C# 유니티 DataType  (0) 2021.08.03
C# 유니티 DeltaTime  (0) 2021.08.03