만재송
유니티에 관련된 내용은아니지만, LeanTween 을 학습하면서 알게된 C# 기능에 대해 설명하겠습니다. LeanTween 을 asset 에 추가하면 gameObject 에 새로운 메서드들이 추가가 됩니다. 어떻게 유니티엔진에 있는 gameobject 에 메소드를 추가 할 수 있었을까요? 바로 C#의 기능중 하나인 확장 메소드를 사용하면 가능합니다. 확장메소드 선언방법은 아래와 같습니다. public static class 클래스이름{ public static [반환 형식] [메서드 이름](this [데이터 형식] [데이터 형식의 식별자],[매개변수 이름]){ //... return [반환 값]; } } 실제 LeanTween 에서는 아래와 같이 구현했습니다.
비동기 같이 처리할 코드를 코루틴을 사용하면 편리하게 구현할 수 있습니다. 사용방법도 간단합니다. StartCoroutine("코루틴명칭") // string 또는 IEnumerator 메서드 중단하는방법도 간단합니다. StopCoroutine("코루틴명칭") 하지만! Start 가 잘된다고 해서 Stop 도 그냥 함수명 써서 실행했는데 잘 안됩니다. 이유는 IEnumerator 메서드를 실행할때마다 참조값이 바뀌기 때문입니다. 보통 StartCoroutine 을 실행할때 아래와 같이 실행합니다. StartCoroutine(TestCoroutine()) TestCoroutine 메서드를 실행한 반환값을 StartCoroutine 메서드에 전달합니다. 즉, TestCoroutine 실행할때마다 참조값이 바..
이전에는 하나의 사이즈였던 아이폰 기종이 이제는 iPhone4, iPhoneSE, iPhone8, iPhone8 Plus 그리고 iPhoneX등 다양한 사이즈와 화면 비율로 출시 되면서, 사이즈에 구애받지 않고 시각적으로 동일한 화면을 구현해야하는데 이를 위한 가장 편리하고 권장되는 방법이 바로 오토레이아웃입니다. 오토레이아웃은 뷰의 제약 사항을 바탕으로 뷰 체계 내의 모든 뷰의 크기와 위치를 동적으로 계산합니다. 오토레이아웃은 애플리케이션을 사용할 때 발생하는 외부 변경과 내부 변경에 동적으로 반응하는 사용자 인터페이스를 가능하게 합니다. 스토리보드를 이용해서 간단하게 사용해보겠습니다. 스토리보드의 뷰컨트롤러에서 적당하게 라벨과 버튼을 배치하고 실행을 해보겠습니다. 이 상태에서 시뮬레이터를 가로모드로 ..