일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- sprite atlas
- equals
- 스프라이트 아틀라스
- Android Plugin
- design pattern
- Addressable System
- Reflection
- 1인 개발
- 디자인 패턴
- ReferenceEquals
- Boxing
- Strategy Pattern
- 게임 개발
- Unity
- c#
- UniRx
- Post Processing
- ==
- ScriptableObject
- addressable
- Zenject
- 인앱 결제
- 포스트 프로세싱
- 플러그인
- Unboxing
- 최적화
- Abstract Factory Pattern
- Today
- Total
목록전체 글 (40)
One_KWS
Player Controller Player Controller는 플레이어의 각 행동들을 제어하는 역할을 한다. 이동 중 공격 버튼을 눌렀을 때 이동을 멈추고 공격을 해야하고 공격 중에는 이동, 대쉬가 되지 않고 대쉬 중에도 이동, 공격이 되지 않게 하는 등 플레이어가 어떤 행동을 하는지에 따라 다르게 처리하도록 했다. 공격 플레이어가 공격할 때는 아래와 같은 규칙을 따른다. 플레이어가 이동 중이라면 이동을 멈추고 공격한다. 플레이어가 대쉬 중이라면 공격이 되지 않는다. (나중에 대쉬+공격 기능을 넣는다면 다르게 해야 될 것 같다.) 위의 규칙에 따라 코드는 아래와 같이 작성하였다. private void Attack() { if (playerDash.IsOngoing) { return; } if (pl..
플레이어 행동 현재 플레이어의 클래스 구조는 아래와 같다. 처음에는 스크립트 하나에 전부 구현했고 이후 여러번 코드를 다듬으면서 아래와 같은 구조가 되었다. 이동, 공격, 대쉬에 대한 각각의 클래스는 IBehaviour 인터페이스를 구현하고 있다. IBehaviour 인터페이스는 해당 행동을 실행하는 Execute()와 다음 행동을 하기 전 현재 행동을 취소하기 위한 Cancel() 함수가 있다. IsOngoing은 현재 행동이 진행중인지 체크하기 위한 프로퍼티이다. public interface IBehaviour { public bool IsOngoing { get; } public void Execute(); public void Cancel(); } 플레이어 애니메이션 플레이어의 Animator ..
개임을 만드는 이유와 일지를 쓰는 이유 현재 회사에서 Unity를 사용하지만, 교육 서비스다 보니 Unity의 많은 기술 중 일부만을 사용하는 느낌을 많이 받았다. 또한 일찍이 팀장을 맡으면서 개발 외의 업무들도 하다 보니 개발하는 시간도 줄기도 했기 때문에 내 실력 향상을 위해서는 사이드 프로젝트가 꼭 필요하다고 생각했다. 그렇게 올해 6월부터 퇴근 후 조금씩 만들었는데 진행한 내용들을 정리해 놓지 않아서 바쁠 때 신경 못쓰다가 다시 돌아오면 어디까지 했는지 기억이 잘 안 나는 문제가 생겨서 .. 지금이라도 조금씩 개발한 내용들을 정리해 놓으려고 한다. (이것도 자주 쓸 수 있을지 모르겠다..) 어떤 게임을 만들 것인가 게임을 만들자는 생각을 할 때 쯤 하데스라는 게임을 하고 있었다. 그래서 자연스럽게..
소개 추상 팩토리 패턴은 구체적인 클래스에 의존하지 않고 서로 연관되거나 의존적인 객체들의 조합을 만드는 인터페이스를 제공하는 패턴이다. 즉, 관련성이 있는 여러 종류의 객체를 일관된 방식으로 생성하는 경우에 유용하다. 추상 팩토리 패턴을 사용하면 클라이언트에서 추상 인터페이스를 통해서 일련의 제품들을 공급받을 수 있다. 이때, 실제로 어떤 제품이 생성되는지는 전혀 알 필요도 없기 때문에 클라이언트와 팩토리에서 생산되는 제품을 분리시킬 수 있다. AbstractFactory AbstractFactory는 모든 Concrete Factory에서 구현해야 하는 인터페이스다. 제품을 생산하기 위한 일련의 메소드들을 정의한다. public interface AbstractFactory { void Create..