모듈 기반 엔터티
플레이어, 몬스터, 탄막, 기믹을 하나의 엔터티 구조로 관리하고, AI·Action·Stat 모듈 교체를 통해 동작을 확장할 수 있도록 설계했습니다.
황치원 · Unity & C# 기반 게임 클라이언트 시스템 설계 및 구현
실제 프로젝트에서 사용한 구조를 기반으로, 게임 클라이언트의 주요 시스템을 독립적이고 재사용 가능하게 설계했습니다.
플레이어, 몬스터, 탄막, 기믹을 하나의 엔터티 구조로 관리하고, AI·Action·Stat 모듈 교체를 통해 동작을 확장할 수 있도록 설계했습니다.
키보드, 조이스틱, 터치 입력을 통합하고 방향 버퍼 + 트리거 조합을 통해 던전 앤 파이터 스타일의 커맨드 입력을 구현했습니다.
XML 기반 데이터를 Record 구조에 자동 매핑하고, 바이트 직렬화 로딩을 통해 파싱 비용을 줄이는 테이블 시스템을 구현했습니다.
Boot, Entry, Loop 구조와 SceneEnvironment 기반 분리를 통해 초기화 순서, 씬 전이, 프리로드를 체계적으로 제어했습니다.
일반 클래스와 Unity 컴포넌트 풀을 분리하고, 리소스 수명 타입에 따라 씬 전환 시 자동 회수되도록 구성했습니다.
UI 컨테이너 구조를 통해 상위 UI가 하위 요소의 수명과 상태를 함께 관리하고, 입력 및 엔터티 이벤트를 자연스럽게 연결했습니다.
이 웹 페이지는 프로젝트 결과와 시연 중심으로 구성되어 있고, 상세한 시스템 설계 및 코드 구조는 GitHub 레포지터리에 정리해두었습니다.
게임 클라이언트 핵심 시스템만 선별한 코드 포트폴리오입니다. 엔터티, 입력, UI, 씬, 테이블, 싱글톤, 풀링, 데이터 저장 구조를 폴더 단위로 정리했습니다.
실제로 구현한 전투, 연출, UI, 상호작용 중심의 프로젝트들입니다.
탄막 연출과 보스 패턴 설계를 중심으로 만든 개인 프로젝트입니다. 짧은 기간 안에 전투 흐름, 카메라 연출, UI를 빠르게 프로토타이핑하며 전반적인 플레이 감각을 구성했습니다.
실시간 파티 사냥을 목표로 한 프로젝트로, 클라이언트 전반을 전담했습니다. 전투, 성장, 파티 흐름, UI/UX, 네트워크 연동 구조를 중심으로 구현했습니다.
탄알 단위로 AI를 부여해 적 추적, 대상 판별, 상호작용 기믹을 구현한 프로젝트입니다. 투사체 계층에서도 의사결정이 가능하도록 설계해 다양한 전술 상황을 만들었습니다.
Unity와 C# 기반으로 게임 클라이언트 전반을 구조적으로 설계하는 것을 선호합니다. 단순히 기능을 붙이는 방식보다, 시스템 간 역할을 분리하고 재사용 가능한 구조를 만드는 데 강점을 가지고 있습니다.
특히 전투, 입력, 엔터티, 데이터, 씬 흐름처럼 서로 얽히는 시스템을 확장 가능하게 설계하는 작업에 흥미를 느끼며, 실제 프로젝트에서도 이러한 방향으로 구조를 구성해왔습니다.