Unity, C#/Event
-
유니티 이벤트 완벽하게 이해하기 4 - 액션과 람다 함수Unity, C#/Event 2019. 3. 5. 18:44
액션과 람다 함수에 대해 이야기 하고자 합니다.실무에 많이 사용하므로 알아두는게 좋을 것 같습니다. (진실한 세상을 꿈꾸며 : http://theeye.pe.kr/archives/2725) 액션 유니티에서 쓰기 쉽도록 미리 만들어진 델리게이트예를들어 코딩을 하다보면 "리턴값이 void 이고 입력값이 없는 함수형"을 델리게이트로 사용할 일이 많습니다.그래서 처음부터 이런 타입을 Using System 내부에 만들어 놓았습니다. 이것을 Action이라고 합니다. 즉 단순히 델리게이트를 편하게 사용하기 위한 단축키 라고 생각하시면 되겠네요. Action : 입력값이 없고, 리턴값이 없는 델리게이트 타입 아래에 간단한 예제를 보겠습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17..
-
유니티 이벤트 완벽하게 이해하기 3 - 이벤트Unity, C#/Event 2019. 2. 19. 17:18
C#의 이벤트에 대해서 정리해 보았습니다. 이벤트 A, B 오브젝트 사이에 커플링이라고 부르는 집적도를 없애기 위해 사용합니다. 커플링은 두 오브젝트가 서로 심하게 엮여 있는 정도를 말합니다. 커플링이 심하면 A 오브젝트가 없어지거나 변경됐을 때 B 오브젝트가 영향을 받습니다. 이벤트를 사용하지 않을 경우 Dead() 함수가 실행되면 B_Run()과 C_Run()을 실행해야 한다고 할 때 이벤트를 사용하지 않을 경우엔 A 클래스가 B와 C 클래스를 알고 있어야 합니다. 즉 서로 영향을 받기 때문에 커플링이 증가합니다. 예제를 한 번 보겠습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 public class Booster : MonoBehaviour { ..
-
유니티 이벤트 완벽하기 이해하기 2 - 델리게이트Unity, C#/Event 2019. 2. 18. 22:53
델리게이트에 대해서 정리해 보았습니다. C#의 내용이지만 유니티 이벤트와 관계가 있어서 Unity 카테고리에 넣어 두었습니다. 실무에서 많이 사용되는 부분이라 이번 기회에 확실하게 이해하고 넘어가겠습니다. 설명중에 틀린 부분이 있으면 댓글로 알려주시면 바로 수정하겠습니다. 델리게이트 : 대행하다. 어떤 함수를 목록(리스트)에 추가해 놓으면 델리게이트가 그 함수를 대신 실행해 줍니다. 목록(리스트)에는 그 함수를 가리키는 포인터 변수가 저장이 됩니다. * 계산기 만들기 * 델리게이트를 사용하지 않을 때 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 31 public class Caculator : MonoBe..
-
유니티 이벤트 완벽하게 이해하기 1Unity, C#/Event 2019. 2. 18. 18:43
유니티 이벤트에 대해 정리해 보았습니다. Unity 이벤트 C#의 이벤트와 델리게이트를 유니티가 사용하기 편하도록 랩핑 해놓은 것입니다. 이벤트를 발동시키는 측도 그 이벤트에 기능을 등록시켜놓은 측도 서로에게 관심이 없도록 함으로써 코드가 스파게티처럼 엮이지 않도록 합니다. ex) 플레이어가 죽었을 때 일어나는 각종 상황- UI에 "죽었음" 출력 - 도전과제 출력 - 게임 재시작 이벤트를 사용하지 않을 때 UIManager.cs - UI를 사용하기 위해 using UnityEngine.UI; 를 추가합니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 using System.Collections; using System.Collections.Generic; using UnityEngine; us..