Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
Tags
- map
- 스택
- 공부
- 알고리즘
- 기술면접
- MonoBehaviour
- 배열
- static_cast
- 트리
- c#
- vector
- rookiss
- 벡터
- 반복문
- 큐
- 인프런
- Queue
- 해쉬맵
- std::unordered_map
- 리스트
- 스택영역
- 프래그멘테이션
- std::map
- thread
- list
- 멀티쓰레드
- 객체지향
- 자료구조
- 차이점
- 힙영역
Archives
- Today
- Total
호빵의 IT 개발소
[유니티/C#] Invoke 본문
Invoke
- 유니티에서 자신이 설정한 시간만큼 함수 시작 시간을 지연시켜주는 기능
- CPU를 최적화에 유용
- 함수 실행 순서를 조절하기 유용
- Invoke, coroutine 둘 다 시간을 지연시키는 기능을 가지지만 단순하게 함수의 시간을 지연시키기 위해서는 Invoke가 편리하게 사용됨
예)
public class Animal : MonoBehaviour
{
public void Start()
{
Invoke("Move", 5f);
}
public void Move()
{
// 움직임 기능 구현
}
}
- Animal스크립트에서 Move() 함수를 통해 동물의 움직임을 구현하고 Start 함수에서 Invoke를 이용하여 Invoke("지연시킬 함수", 지연 시간);에 맞게 코드를 넣고 5초 뒤에 동작하도록 코드를 작성하였습니다.
InvokeRepeating
- 처음 함수를 실행할 때, 일정 시간 지연 후 일정 시간마다 반복하게 해주는 기능
- InvokeRepeating("지연 시킬 함수", 처음 지연 시간, 지연 후 반복할 시간);
public class Cow : MonoBehaviour
{
public void Start()
{
InvokeRepeating("Sound", 5f, 2f);
}
public void Sound()
{
Debug.log("음머~");
}
}
- 소 울음소리 Sound 함수를 작성하고 Start함수를 통해 InvokeRepeating를 사용하게 되면 시작 후 처음은 5초 뒤에 "음머~" Log가 출력되게 되고 그 이후로 2초마다 "음머~" Log가 계속 출력되게 됩니다.
참조 및 출처 : https://chameleonstudio.tistory.com/37
'C#, 유니티 > 유니티엔진 기초' 카테고리의 다른 글
| [유니티/C#] 최적화 시작 (0) | 2022.06.28 |
|---|---|
| [유니티] 유니티 엔진의 특징 (0) | 2022.06.27 |
| [유니티/C#] 코루틴(Coroutine) (0) | 2022.06.10 |
| [유니티] C# 스크립트 생성 시 자동 주석 제거 (0) | 2022.01.17 |
| [유니티] MonoBehaviour (0) | 2022.01.17 |
Comments