코루틴
-
[TIL] 16주차 3일 기술 면접 대비개발일지/스파르타 코딩클럽 부트캠프 2024. 8. 1. 09:59
💡 질문에 답해보고 직접 확인해보는 시간을 가집시다. InvokeRepeating을 통해 반복 실행 중인 메서드는 오브젝트를 비활성화하면 멈출까요?Coroutine을 통해 반복 실행 중인 메서드는 오브젝트를 비활성화하면 멈출까요?다음 Coroutine 코드의 성능 상 문제는 무엇이 있을까요? (Hint : 메모리)IEnumerator Fade(){ Color c = renderer.material.color; for (float alpha = 1f; alpha >= 0; alpha -= 0.1f) { c.a = alpha; renderer.material.color = c; yield return new WaitForSeconds(.1f); }..
-
[TIL] 10주차 3일 ( Coroutine )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 19. 20:58
오늘은 코루틴에 대해서 알아보고 사용해보려고 한다. 먼저 코루틴의 개념에 대해서 알아보자코루틴 ( Coroutine )코루틴은 하나의 작업을 여러개의 프레임에 분산할 때 사용한다. 코루틴의 활용IEnumerator 리턴 타입의 함수에서 yield return을 사용하여 코루틴을 구현할 수 있다.StartCoroutine 함수를 통해서 코루틴을 시작할 수 있고, StopCoroutine 함수를 통해 코루틴을 중지할 수 있다.코루틴은 프레임 간의 지연, 비동기 작업, 시간에 다른 애니메이션 등의 작업에 주로 사용된다.yield return null은 다음 프레임까지 대기를 의미하고, yield return new WaitForSeconds(n)은 n초 동안 대기를 의미한다. 중간에서 중단하려면 yield b..
-
[TIL] 9주차 5일 개인과제 진행 ( Coroutine )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 14. 20:48
오늘 배운 내용코루틴의 다양한 활용법 먼저 코루틴은 IEnumerator라는 반환형으로 시작해야하며, yield return이 반드시 함수 내부에 존재해야한다. yield return은 다음 함수가 실행될 때 까지의 텀을 반환한다고 생각하면 된다.예를 들어서Attack();yield return null;Attack();이런 식으로 함수 내부를 작성하면 Attack 메서드가 발생하고 바로 다음 프레임에 한번 더 발생한다.따라서 바로 실행시켜주려면 yield return null을 하면 된다. 그럼 텀을 주려면 어떻게 해야할까? Attack();yield return new WaitForSecond(3f);Attack();이렇게 하면 Attack 후 3초 뒤에 Attack이 발동된다. 정리하면 1. yie..
-
[TIL] 7주차 1일 개인 프로젝트 주차 ( 조명, 카메라 절두체, Coroutine)개발일지/스파르타 코딩클럽 부트캠프 2024. 5. 27. 20:47
오늘 배운 내용 TryGetComponent TryGetComponent는 유니티에서 사용하는 메소드이다. 게임 오브젝트의 컴포넌트를 가져온다.보통 지금까지 GetComponent로 주로 컴포넌트를 가져왔고 이건 사용해본 적이 없는데,두 메소드의 차이점을 알아보자public bool TryGetComponent(out T component) where T : Component; TryGetComponent의 형식은 다음과 같다.T : 가져오려는 컴포넌트의 타입. MonoBehaviour를 상속한 컴포넌트는 모두 사용 가능하다.component : 컴포넌트를 가져올 때 사용되는 out 매개변수 아래는 강의에서 나온 사용법이다.using UnityEngine;public class ExampleScript..