전체 글142 5. yield return 에 대해 ( 활용 02 ) 이전 글에서는 유니티에서 yield return을 사용하여 이동 애니메이션, 타이머, 이벤트 대기 같은 기능을 구현하는 방법을 알아보았습니다. 이번 글에서는 yield return 을 활용하여 2D 스프라이트 애니메이션을 구현하는 방법을 다루겠습니다. yield return을 사용한 스프라이트 애니메이션2D 게임에서는 특정 시간 간격마다 스프라이트를 변경하는 방식으로 애니메이션을 구현합니다. 코루틴을 사용하면 별도의 업데이트 로직 없이 자연스럽게 애니메이션을 처리할 수 있습니다. 아래는 yield return을 사용하여 스프라이트 애니메이션을 실행하는 예제입니다.IEnumerator PlaySpriteAnimation(SpriteRenderer renderer, Sprite[] frames, float .. 2025. 3. 9. 4. yield return 에 대해 ( 활용 01 ) 이전 글에서는 yield return이 Unity에서 StartCoroutine()을 통해 어떻게 실행되는지 살펴보았습니다. 이번 글에서는 yield return 을 활용하여 실제 게임에서 자주 사용되는 패턴을 구현해보겠습니다. yield return을 활용한 애니메이션 제어yield return을 사용하면 특정 시간 간격으로 실행되는 애니메이션을 쉽게 만들 수 있습니다. 예를 들어, 일정 간격으로 오브젝트의 위치를 변경하는 간단한 애니메이션을 만들어 보겠습니다.IEnumerator MoveObject(Transform obj, Vector3 target, float duration){ Vector3 s = obj.position; float t = 0f; while (t 코루.. 2025. 3. 9. 3. yield return 에 대해 (유니티에서의 동작) 이전 글에서는 yield return이 내부적으로 IEnumerator 인터페이스를 구현하는 클래스로 변환된다는 것을 알아보았습니다. 이번 글에서는 yield return이 Unity에서 코루틴과 어떻게 연결되는지 살펴보겠습니다. StartCoroutine() 은 IEnumerator 객체를 실행한다Unity 에서 yield return을 활용하려면 StartCoroutine() 을 사용해야 합니다.StartCoroutine() 은 IEnumerator를 인자로 받아 이를 실행하는 역할을 합니다.예제 코드를 보겠습니다void Start(){ StartCoroutine(MyCoroutine());}IEnumerator MyCoroutine(){ Debug.Log("Step 1"); yiel.. 2025. 3. 9. 2. yield return 에 대해 (내부 동작) 이전 글에서 yield return 을 사용하면 함수 실행을 중간에 멈췄다가 다시 실행할 수 있다는 것을 배웠습니다. 그렇다면, C# 은 어떻게 이를 가능하게 할까요? 이번 글에서는 yield return 이 내부적으로 어떻게 동작하는지 알아보겠습니다. yield return 이 포함된 함수는 컴파일 단계에서 변환된다yield return 을 포함한 함수는 일반적인 함수처럼 작동하는 것이 아니라, 컴파일러에 의해 특별한 클래스로 변환됩니다. 즉, C# 컴파일러는 해당 함수를 IEnumerator 인터페이스를 구현하는 클래스로 변환하여 실행 흐름을 제어합니다. 예를 들어, 다음 코드를 보겠습니다:IEnumerator MyCoroutine(){ Console.WriteLine("Step 1"); .. 2025. 3. 9. 1. yield return 에 대해 (개념) 이번 시리즈에서는 C# 의 yield return 에 대해 소개하면서, 유니티에서는 주로 어떻게 활용하는지, 처음 접하는 분들도 차근차근 이해할 수 있도록 예제를 중심으로 풀어갈 예정입니다.그럼 첫 번째 이야기부터 시작해 보겠습니다. 일반적인 함수는 중간에 멈출 수 없다일반적인 함수는 실행 중에 빠져나갔다가 다시 돌아올 수 없습니다.예를 들어, 아래 코드를 보면 ...void MyFunc(){ Console.WriteLine(1); Console.WriteLine(2); Console.WriteLine(3);} 이 함수는 한 번 실행되면 끝까지 실행되며, 중간에 멈출 방법이 없습니다. 즉, 1을 출력하고 멈추고 싶어도 그럴 수 없으며, 무조건 2, 3까지 실행됩니다. yield retur.. 2025. 3. 9. Action 과 Func 의 형변환 살펴보기 C# 에서 대리자는 특정 메서드를 참조하는 기능을 제공하는 중요한 개념입니다. 이번 글에서는 대리자의 형변환과 람다 표현식을 활용하여 다양한 방식으로 사용할 수 있는 방법을 정리해보겠습니다. 대리자의 형변환Action 대리자는 반환값이 없으므로, 람다 형식으로 Console.WriteLine()을 호출할 수 있습니다. 그러나 형변환을 적용하려면 적절한 괄호 사용이 필요합니다.((Action)(() => Console.WriteLine("Hello")))(); 위 코드는 괄호가 너무 많아 하나씩 쪼개서 살펴보겠습니다. WriteLine() 으로 출력하는 부분입니다.() => Console.WriteLine("Hello") 는 람다 표현식을 사용하여 Console.WriteLine()을 호출하는 함수입니다.. 2025. 3. 8. 이전 1 ··· 20 21 22 23 24 다음