GAME CLIENT / RENDERING / TOOLS
차명훈MyungHoon Cha
C++로 게임을 구현하고, 렌더링과 제작 도구를 만듭니다.
DirectX 기반 게임 프로젝트에서 클라이언트와 렌더링을 구현했습니다. 현재는 자체 엔진 BamEngine을 개발하며, 씬 편집과 직렬화부터 게임 실행까지 이어지는 구조를 공부하고 있습니다.
현재 개발 중
Engine & Editor
자체 엔진 · 개인 프로젝트개발 중
런타임과 에디터를 분리하고, Reflection 기반 씬 편집·저장·복원을 연결하는 C++ 게임 엔진입니다.
Reflection & 직렬화
Clang 전처리 콜백과 AST로 선언을 분석하고 등록 코드를 생성합니다. 독립 Runtime·Archive·연결 어댑터로 타입 조회와 JSON/BEVE 저장을 연결합니다.
씬 편집 & Undo/Redo
컴포넌트 값과 계층·참조 관계를 영구 ID로 기록하고, 엔티티 재생성 후 새 핸들에 다시 연결합니다.
RHI & GPU 피킹
DirectX12·SDL_GPU 경로를 분리하고, G-Buffer의 선택 ID를 프레임·엔티티 유효성 검사와 함께 해석합니다.
에디터를 중심으로 개발 중이며, 독립 Client 배포와 전체 실행 흐름의 검증은 진행 중입니다.
주요 프로젝트
Selected work · 2024–2025
팀 프로젝트 · 7인01
스텔라 블레이드 모작
2025.07 — 2025.09
렌더링 · 셰이더 · 배치 툴
상용 게임 엔진 없이 DirectX11로 제작한 3D 액션 게임 모작입니다. 다양한 재질과 환경·화면 효과를 하나의 렌더링 파이프라인에 연결했습니다.
- G-Buffer와 재질별 StructuredBuffer를 연결한 Deferred 재질 처리
- PBR·IBL, CSM과 텍셀 스내핑, SSAO/HBAO
- 볼류메트릭 안개·자동 노출·블룸 및 스크린 스페이스 데칼
개인 프로젝트02
Sonic Frontier 모작
2025.04 — 2025.07
클라이언트 · 렌더링 · 에디터
DirectX11과 PhysX를 사용해 게임과 제작 도구를 함께 구성했습니다. 애셋 변환, 오브젝트 배치, UI 편집과 경로 제작을 직접 연결했습니다.
- Catmull-Rom 경로 프레임과 PhysX 충돌체 생성
- 애니메이션 상태 전환 시 Lerp·Quaternion Slerp 보간
- GPU ID 피킹·기즈모 편집, UI 아틀라스와 메쉬 인스턴싱
팀 프로젝트 · 4인03
Project Warlock 모작
2025.02 — 2025.04
렌더링 · 이펙트 · 사운드
DirectX9 기반 FPS 모작에서 렌더 순서, 이펙트와 파티클, FMOD 사운드 컴포넌트를 담당했습니다.
- 동적 정점 버퍼의 DISCARD/NOOVERWRITE를 이용한 파티클 배치 렌더링
- 렌더 그룹 분리, 투명 객체 거리 정렬과 광원 목록 구성
- Transform 기반 3D 사운드 이벤트·소스·리스너 연결
개인 프로젝트04
Baba Is You 모작
2024.12 — 2025.01
게임 로직 · 그리드 · 맵 툴
단어의 배치가 게임 규칙이 되는 퍼즐을 Windows API로 구현했습니다. 규칙 검사와 이동, 되돌리기, 스테이지 편집을 한 프로젝트에서 다뤘습니다.
- 가로·세로 세 블록의 문장 검사와 오브젝트·속성 규칙 적용
- PUSH 연쇄 이동과 STOP 등 속성별 상호작용
- 그리드 스택 기반 배치 복원, 바이너리 맵 저장·불러오기
사용 기술
프로젝트에서 사용한 도구
Languages
C++ · C# · Python · JavaScript
Graphics & Runtime
DirectX9/11/12 · HLSL · SDL_GPU · PhysX · FMOD · Unity
Tools & Architecture
CMake · vcpkg · EnTT · LLVM/Clang · Dear ImGui · Git
이전 프로젝트
Unity · Web · Desktop
Unity · 팀 프로젝트
Patchwork
몬스터를 피해 저택을 탐험하는 2D 퍼즐 게임. 이동·상호작용·UI·카메라 전환과 레벨 구성을 담당했습니다.
Unity · 팀 프로젝트
Wall Jump
벽 점프와 대시로 진행하는 플랫폼 게임. 캐릭터 이동·애니메이션 스크립트와 레벨 구성을 담당했습니다.
Web · 팀 프로젝트
Fetch
학교 구성원을 위한 익명 커뮤니티. UML 기반 구조 설계와 프론트엔드·백엔드 연결을 담당했습니다.
Web · 개인 프로젝트
BamOwl.com
Jekyll과 GitHub Pages 기반 개인 사이트. Notion을 글 작성 도구로 연결하고 발행 흐름을 구성했습니다.
Desktop · 개인 프로젝트
BDO Desktop Alarm
게임 이용을 돕는 데스크톱 알림 도구입니다.
학교 프로젝트
-
인벤토리, 드래그 앤 드롭, 미니맵과 휠 메뉴를 포함한 RPG UI 구현
-
Unreal Engine 기반 플러그인·셰이더·커스텀 액터 구현
-
C++ 기반 레이 트레이싱·래스터화와 OpenGL 렌더링 학습
-
컴퓨터 구조와 MIPS 관련 수업 프로젝트
학력 · 교육
University of Maryland, Baltimore County
B.S. in Computer Science · 2021.01 — 2023.05
쥬신 게임 아카데미
클라이언트 프로그래밍 심화 과정 · 2024.09 — 2025.09