Unity(10)
-
C# IEnumerator, IEnumerable
IEnumerator - 열거자 인터페이스 정의 IEnumerator 는 제네릭이 아닌 모든 열거자의 기본 인터페이스이다. 사용 현재 데이터를 반환하는 Current를 반환하는 함수를 구현한다. 현재 참조하고 있는 노드의 다음노드를 가르키고, 다음 노드가 존재하는지를 반환하는 함수를 구현한다. 컬렉션의 첫번째 요소를 가르키도록 하는 리셋 함수를 구현한다. IEnumerable 정의 제네릭이 아닌 컬렉션에서 단순하게 반복할 수 있도록 지원하는 열거자를 노출하도록 하는 인터페이스이다. 사용 IEnumerator 를 반환하는 GetEnumerator() 함수를 구현한다. 예시 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 ..
2021.11.16 -
C# Generic Basic
Generics 정의 타입을 디자인 할 때가 아닌 클라이언트가 사용할 때 지정해주는 기술이다. 사용 메소드, 클래스 등에 유연성(재사용성)을 제공함과 동시에, 컴파일 타임에서의 타입 안정성을 제공한다. Object의 사용을 줄여 Boxing / Unboxing 으로 일어나는 자원의 소모를 막을 수 있다. 예시 오른쪽 코드를 보면, MyIntLinkedList 타입의 연결 리스트는 AddFirst에서 int 만을 받아와 노드를 생성하기 때문에 여러 타입을 제공할 수가 없다. 그러나 MyLinkedList 타입의 연결 리스트는 Generic을 사용했기 때문에 클라이언트가 원하는 타입으로 노드를 생성할 수 있고, 다른 타입의 데이터를 파라미터로 전달하려 하면 컴파일 타임에서 에러가 나게 된다.
2021.11.11 -
Garbage Collection (GC)
메모리 관리 기법 중 하나로 프로그램이 동적으로 할당했던 메모리 영역 중에서 필요없게 된 영역을 해제하는 기능이다. 즉, 동적 할당된 메모리 영역 가운데 어떤 변수도 가리키지 않는 메모리 영역을 탐지하여 자동으로 해제하는 기법이다. 기본적으로 C#은 메모리를 자동적으로 관리 해준다. C# 메모리 구조 : https://everyday-devup.tistory.com/10?category=934756 [Unity] C#에서의 메모리 * Heap ▶ 위치가 정해져 있지 않고 용량이 큰 대신 느림 ▶ 참조 타입 ( ex class, string, object ) ▶ 변수 선언 시 데이터가 저장되어있는 메모리를 가리키게 됨 * Stack ▶ 정렬되어 있고 빠르지만 사 everyday-devup.tistory.c..
2021.06.01 -
Unity에서 GameCenter 적용시키기
*Android (Google Play Console - Unity) Unity 에서 Android 에서 사용하는 Google Play Game 을 적용시키는건 매우 쉽다. Google Play Console 에서 업적, 리더보드 등 원하는 시스템을 만들고 리소스를 받아와서 미리 받아놓은 플러그인에 적용시키기만 하면 된다. 참고자료 scvtwo.tistory.com/75 [Unity] 유니티 구글 플레이 게임 서비스 연동 ( 로그인 하기 ) 안녕하세요. 이 글은 이전에 작성한 [Unity] 유니티 구글 플레이 게임 서비스(GPGS) 연동 후 앱 등록을 진행한 것을 기반으로 합니다. [Unity] 유니티 구글 플레이 게임 서비스(GPGS) 연동 후 앱등록 �� scvtwo.tistory.com github..
2020.08.20 -
MVC Pattern - Design pattern
MVC 패턴 : 하나의 프로젝트 구성을 Model , View , Controller 3가지 역할로 구분한 패턴 사용자가 Controller를 조작하면, Controller는 Model을 통해서 데이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 View를 제어해서 사용자에게 전달한다. 흐름을 대충 정리해보면 user -> controller -> model -> controller -> view -> user 유저가 컨트롤러를 조작하면 컨트롤러가 모델에 데이터를 가져와서 그 데이터를 바탕으로 뷰를 제어해서 그 뷰가 유저에게 보여지는 형식이다. MVC 패턴의 각 역할에 대하여 세세하게 알아보자. Model : 프로젝트의 정보와 데이터를 담당. (상수, 초기화값 , 변수 등) 또는 이러한 데이터..
2020.06.07 -
Ping! Peng! Boong! - Puzzle Game
프로젝트 명 : Ping! Peng! Boong! - 구구게임즈 개발 기간 : 2020.03.23 - 진행중 개발 환경 : Unity 개발 인원 : 6명 주요 역할(프로그래밍) 퍼즐 로직 구현 Sound, Camera, GameManager 구현 상점, 인벤토리, 가챠 시스템 구현 커뮤니티 시스템 구현 맵 에디터 콘텐츠 구현 CSV, Mysql을 사용하여 게임데이터 및 유저 데이터 관리 AWS EC2를 사용하여 Node.js 웹 서버 제작 API 구현 Facebook SDK, AWS SDK for Unity 사용 게임 설명 : #3D #퍼즐 #싱글플레이 #전략 스테이지 형식의 퍼즐게임입니다. 맵에는 두 마리의 펭귄이 존재하고 화면을 슬라이드해서 원하는 펭귄을 움직일 수 있습니다.(상하좌우) 슬라이드를 하..
2020.05.17