단순히 기능을 구현하는 것을 넘어, "더 나은 구조는 무엇일까?" 를 항상 고민합니다.
견고하고 확장 가능한 아키텍처를 설계하는 것에 큰 흥미를 느끼며, 특히 복잡한 게임 시스템이 유기적으로 동작할 때 가장 큰 희열을 느낍니다.
효율적인 구조 설계를 통해 유지보수와 사용자 경험을 모두 잡는 것을 목표로 합니다.
동료와 함께 배우고 성장하며 즐겁게 게임을 만드는 개발자입니다.
| Languages | Engines | Game Development Specialties |
|---|---|---|
Data-Driven Design Multiplayer Systems Combat Architecture AI Programming Gameplay Ability System Network Programming |
현재 보고 계신 이 페이지는 주요 프로젝트를 소개하는 '갤러리' 입니다. 마음에 드는 프로젝트를 발견했다면, 아래 단계를 따라 깊게 탐색해 보세요.
| 문서 | 역할 | 내용 |
|---|---|---|
| 📋 Project Gallery | Root (전체 개요) | 주요 프로젝트 목록, 핵심 역량 요약 |
| 📁 Repository README | What (개요) | 프로젝트 개요, 데모 영상, 핵심 기능, 아키텍처 |
| 🔗 Tech Docs | How & Why (상세 구현) | 코드 분석, 설계 과정, 기술 회고, 트러블슈팅 |
| 아티클 | 내용 |
|---|---|
| AnimNotifyState 인스턴스 공유 문제 | 여러 캐릭터가 같은 NotifyState 인스턴스를 공유해서 생기는 문제와 해결 |
| Fast Array로 인벤토리 동기화하기 | TMap 리플리케이션 불가 문제, FFastArraySerializer로 델타 동기화 구현 |
| Listen Server에서 소켓 기반 공격이 실패하는 이유 | LOD가 소켓 위치 계산에 미치는 영향과 SetForcedLOD 해결책 |
| BindWidget vs GetWidgetFromName | GetWidgetFromName의 O(N) 트리 순회 비용, BindWidget이 효율적인 이유 |
| UScrollBox 버튼 드래그 스크롤 문제 | Slate 이벤트 버블링과 FReply, PreciseClick 원리 심화: 터치와 마우스의 엔진 레벨 동작 차이 |