Unity 6

SOLID, 객체지향 원칙

어떤 프로그램을 개발할 때 주먹구구식으로 '우선 동작 가능하게 하자'라는 마인드로 개발을 했었다. 그런데 유지보수를 막상 해보니까 생각보다 하나를 추가하거나 삭제하는 일이 많은 비용이 들고 힘들었다. 그러다가 새로운 분이 우리 팀에 들어오셨는데 나에게 말했던 것이 바로 솔리드 원칙 바로 오늘 주제다. SOLID라는 개념을 어렴풋이 들었지만 개발할 때 막상 지켜서 해본 적이 없었다. 그래서 이번 시간에 정리하기로 마음먹었다. SOLID 로버트 마틴이 2000년대 초반에 명명한 객체 지향 프로그래밍 및 설계의 다섯 가지 기본 원칙을 마이클 페더스가 두문자어 기억술로 소개한 것이다. 프로그래머가 시간이 지나도 유지 보수와 확장이 쉬운 시스템을 만들고자 할 때 이 원칙들을 함께 적용할 수 있다. 즉 소프트웨어 ..

Unity 2021.08.15

[Unity] ios unitywebrequest.get

도입 배경 게임을 개발할 때 시간과 관련해서 처리를 할 때가 있다. 지금 개발하고 있는 게임에서는 시간과 관련해서 처리해야 하는 것들이 존재하고, 동시에 사용자로 인해 시간을 조작할 수 없도록 하기위해서 인터넷 시간을 받아와 운영할 수 있게 했다. IEnumerator GetCurrentTime() { UnityWebRequest request = new UnityWebRequest(); using (request = UnityWebRequest.Get(url)) { yield return request.SendWebRequest(); if (request.result == UnityWebRequest.Result.ConnectionError) { Debug.Log("Failure get current ..

Unity 2021.06.28

[Unity] RemoveListener, RemoveAllListener

한동안 엄청 고생했던 것을 바탕으로 작성한다. Unity 상에서 Button에 이벤트를 할당하는 방법은 2가지가 있다. 직접 Inspector 창에서 매핑하기 스크립트 상에서 할당하기 using UnityEngine.UI; GoPCBtn.onClick.AddListener(func); 보통은 매핑하기 힘들거나 코드를 한눈에 파악하기 힘들 때 사용하는 방법이 스크립트 상에서 할당하는 것이다. 가끔 Button 에 이벤트를 추가할 때 기존에 추가한 이벤트를 지우고 싶은 순간이 찾아오게 된다. 예를 들어 활성화될 때마다 리스너를 추가한다던가, 한 Popup 안에서 다양한 기능들을 스위칭해서 사용하는 경우 이때 사용하는 것이 바로 RemoveListener 혹은 RemoveAllListener이다. 알아둬야 할..

Unity 2021.04.15

[Unity] 소수점 처리

소수점 처리가 필요한 경우는 아래와 같이 장인의 기운을 표시할 때 사용할 수 있다. 이럴 때 바로 포맷 함수를 이용하면 편하다. 장인의 기운이 30.13333 이라고 할 때 다음과 같이 소수점 둘째 자리까지 표기는 아래와 같이 하면 된다. using System; craftsmanship.text = string.Format("{0:0.##}", 표기할 수치) + "%"; Format 콜론 앞에 있는 부분은 Format에 들어갈 매개변수 콜론 뒤에 부분은 소수점 자릿수를 표시 '#'은 값이 있으면 표시하고 없으면 표시하지 않는다.

Unity 2021.04.14

[Unity] text component

UI를 개발하다가 보면, Text component를 자주 사용하게 된다. 그런데 가끔 모르는 부분도 만지다 보면 '이렇게 사용하는 게 맞나?' 싶은 생각이 자주 들 때가 있다. 항상 개발하면서 Text component에 대해서 궁금했는데, 이번에 한 번 정리해볼까 한다. Text Component는 아래와 같이 생겼다. Text 표시할 텍스트를 넣는다. Font 텍스트의 폰트 지정 Font Size 폰트 크기 Line Spacing 상, 하 글 간격을 띄워준다. Rich Text 입력 텍스트를 마크업 형식으로 표현할지 여부 ex) black 사용하지 않는다면 끄는 게 좋다고 한다. Alignment 텍스트를 정렬하는 기능이다. 자주 사용한다. Horizontal Overflow 가로 영역을 넘어선 글..

Unity 2021.04.03