3D 탑다운 멀티 액션 게임입니다. 클라이언트부터 게임 서버 엔진, Rest API 서버까지 직접 구현한 프로젝트입니다.
분류 | 기술 |
---|---|
Language | |
Game Engine | |
Server | |
DB | |
Other |
개발을 하면서 만났던 문제 혹은 개선할 점을 작성해봤습니다.
구현한 내용을 회고하고 좀 더 자세히 공부하고 습득하기 위해 블로그에 정리했습니다.
(블로그 글 링크를 누르시면 블로그로 이동됩니다.)
- 캐릭터가 벽을 통과하는 문제를 Raycast를 사용해서 벽을 감지해서 이동하지 못하도록 해결(블로그)
- 반복적으로 작성되는 싱글톤 코드를 제네릭 클래스를 사용해 통합해서 관리하도록 구현 (블로그)
- GameObject.Find()가 씬의 모든 GameObject와 문자열로 비교하는 성능이슈와 런타임 오류 위험성을 인지하고 개선(블로그)
- 로컬에서 멀티플레이 게임을 테스트하기 위해 다중 클라이언트를 빌드 후 실행 할 수 있도록 구현(블로그)
- 집에 있는 여분의 컴퓨터의 우분투 환경에 C# 게임 서버 환경 구축(블로그)
- 해외에서 해킹 시도를 하는 것을 로깅 시스템을 통해 확인하고, NGINX를 사용해 해외 IP 차단해 대처(블로그)
- DataManager를 구현해 기획적으로 수정 소요가 많은 아이템 데이터를 Json으로 저장하고 불러오도록 구현(블로그)
- 유저의 비정상적인 종료, 연결을 PingPong 시스템을 사용해 감지하고 서버에서 연결을 종료합니다.(블로그)
- Service, Repository 패턴 적용해서 Controller 코드 분리하기. 객체지향적으로 코드 수정(블로그)