Skip to content
View chungheonLee0325's full-sized avatar

Block or report chungheonLee0325

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
chungheonLee0325/README.md

👋 안녕하세요, Unreal Client Engineer 이충헌입니다

게임플레이·UI의 상태 흐름을 설계하고, 반복 작업은 도구와 측정으로 개선합니다.

Typing SVG

Unreal Engine C++ 기반 클라이언트·게임플레이 개발을 중심으로 작업합니다.
서버 상태 수신부터 클라이언트 데이터 처리와 UMG/Slate 반영까지 연결하고,
객체 수명·UI 입력·성능 문제를 코드 구조와 실제 측정 결과로 검토합니다.

Gmail Steam


대표 작업 — Gameplay / Editor Tooling

Sonheim Demo Thumbnail

🎥 시연 영상 보기


📅 기간: 25.03 ~ 25.09 / 26.09 ~ 현재

👥 구성: 초기 2인 팀 → 개인 확장 개발

🔧 주요 기술:

Sonheim — UE5.5 Multiplayer Gameplay & UI

서버 권위 게임플레이와 데이터 기반 콘텐츠, 클라이언트 화면 구조를 연결한 액션 어드벤처

초기 2인 팀에서 전투·인벤토리·제작·포획 시스템을 구현한 뒤, 개인 개발로 도감·퀘스트·분기 던전·보스·월드맵·UI 프레임워크를 확장했습니다.

주요 구현:

  • 게임플레이·네트워크: Server RPC, OwnerOnly FastArray, 스킬 UObject 복제, GameState Snapshot으로 실행 권한과 복제 범위를 구분했습니다.
  • 콘텐츠 확장: 게임플레이 이벤트를 도감·퀘스트 기록과 연결하고, 던전 Event/Action/Transition 및 보스 PatternClock·Telegraph를 데이터로 관리했습니다.
  • UI 아키텍처: 게임 상태 → Delegate/RepNotify → Presenter/ViewData → Widget 경로를 정리하고, GameUIFramework로 화면 레이어·입력 모드·팝업·재사용 정책을 분리했습니다.
  • 월드맵: 플레이어별 탐험 안개를 미니맵·전체 지도에서 공유하고, 퀘스트·도감 위치와 빠른 이동 표석을 연동했습니다.
  • 성능 분석: 1080p/RTX 2070 SUPER 환경에서 아이템 교환 이벤트 프레임 32.6 → 17.1ms, 인벤토리 열기 57.5 → 22.1ms를 측정했습니다. 수집 조건과 원인은 Wiki에 기록했습니다.

Repository  |  Tech Docs (01–21)  |  UI 성능 분석


🧰 Developer Tools & R&D

AgentMcp Dungeon UI Case Study

AgentMcp — Unreal Editor MCP · Agent Skills

UE 5.5·5.7에서 사용하는 Unreal Editor 플러그인으로, Claude Code·Codex가 프로젝트를 조사·수정·실행·검증할 수 있도록 MCP 도구와 작업별 Skill을 제공합니다.

UE 5.8의 실험적 MCP/Toolset 및 Agent Skill 개념을 참고해 기존 버전에서 별도로 구현했습니다. SKILL.md 작업 지침을 런타임에 읽고, 에디터 조사·수정·실행 도구와 함께 제공합니다.

  • Dynamic Agent Skills — 기본 Skill을 에디터에서 제공하고, 프로젝트별 SKILL.md를 런타임에 읽어 덮어쓰기. umg-authoring·blueprint-graphs·perf-investigation 등
  • UMG / Blueprint — Widget Tree·C++ BindWidget 검증, Widget Blueprint 및 Blueprint 노드 편집, Compile → PIE → Viewport/Log 확인
  • UI Performance — CSV·Unreal Insights Trace·ProfileGPU를 분석하고, 반복 실행 간 편차를 고려해 수정 전후 비교
  • Editor AI Chat — 에디터 내 채팅에서 계정 기반 에이전트를 호출하고 읽기/에셋/코드 권한 및 변경 승인 카드로 작업 범위 제어

실제 Sonheim UI에서 기존에 측정하지 않았던 화면을 조사해 보관함 재생성 비용, Delegate 중복 구독, 알림 오류를 확인·수정한 과정을 기록했습니다.

Repository  |  Tech Docs  |  성능 조사 기록  |  UMG 제작 사례


🛠️ 기술 스택 (Tech Stack)

Languages Engines Game Development Specialties
C++
C#
Unreal Engine
Unity
Gameplay Systems Multiplayer / Replication
UMG / Slate UI Unreal Editor Tooling
Data-Driven Design Gameplay Ability System

🏢 업무 경력 (Work Experience)

회사 기간 직무 및 주요 업무 사용 기술
Unreal Engine 기반 크로스플랫폼 MMORPG(라이브 서비스) 2025.11 ~ 2026.09 UE5 MMORPG 클라이언트 콘텐츠/UI 개발
• 공성전·길드 파티·복구 쿠폰 등 서버 연동 콘텐츠 구현
• UMG/Slate UI 데이터 반영·입력 처리 정책 개선
• Editor Tool 개발, UObject 수명·크래시 원인 분석



모바일 MMORPG 개발사 9개월 모바일 MMORPG 서버/클라이언트 개발
• 레이드 보스 시스템 (페이즈, 패턴, 난이도)
• 영웅 성장 시스템 설계
• 스킬 시스템 개선 (예약, 확장, 인디케이터)
• FSM 기반 몬스터 AI 구현

차량용 SW/툴 개발사 2년 7개월 차량용 설계 도구 및 SW 개발
• RapidAUTO Tool 연동 기능 개발
• Windows 애플리케이션 기능 개발/유지보수
• 전기차 BMS 시스템 코드 변환 컨설팅


프로젝트 문서 안내

이 페이지에서는 프로젝트별 핵심 구현을 소개합니다. 시연과 기능 구성은 Repository README, 구조·코드·기술 선택은 Tech Docs에서 확인할 수 있습니다.


📝 기술 아티클

UE5 개발 중 마주친 문제들의 원인 분석과 해결 과정

구현 중 확인한 Unreal Engine 동작과 재현·수정 과정을 정리했습니다.

아티클 내용
AnimNotifyState 인스턴스 공유 문제 여러 캐릭터가 같은 NotifyState 인스턴스를 공유해서 생기는 문제와 해결
Fast Array로 인벤토리 동기화하기 TMap 리플리케이션 불가 문제, FFastArraySerializer로 델타 동기화 구현
Listen Server에서 소켓 기반 공격이 실패하는 이유 LOD가 소켓 위치 계산에 미치는 영향과 SetForcedLOD 해결책
BindWidget vs GetWidgetFromName GetWidgetFromName의 O(N) 트리 순회 비용, BindWidget이 효율적인 이유
UScrollBox 버튼 드래그 스크롤 문제 Slate 이벤트 버블링과 FReply, PreciseClick 원리

심화: 터치와 마우스의 엔진 레벨 동작 차이

📁 전체 보기


그 외 프로젝트 (Other Projects)

VALORANT Gameplay GIF

🎥 시연 영상 보기


📅 기간: 25.05 ~ 25.06 (2M)

👥 구성: 7인 팀 프로젝트

🔧 주요 기술:

VALORANT (Multiplay Hypher FPS 게임)

GAS를 활용하여 주요 시스템을 구현한 멀티플레이 하이퍼 FPS

4종의 에이전트와 12개 스킬을 공통 Ability 구조로 구현했습니다. Spike 설치·해체 상태 머신과 라운드별 상점·경제 처리를 서버 판정 경로에 연결했습니다.

담당 개발 및 역할:

  • 모듈화된 어빌리티 설계: 준비→대기→실행 상태 흐름과 후속 입력·투사체·장판형 스킬의 공통 실행 경로를 구성했습니다.
  • 다양한 스킬 메커니즘 구현: 즉발형(Jett), 후속입력형(KAY/O) 등 여러 에이전트의 스킬을 공통 시스템 내에서 구현했습니다.
  • 핵심 게임 루프 구축: Spike 설치·해체 상태와 라운드 전환, 구매 가능 시점 및 재화 갱신을 연결했습니다.
  • 서버 검증·입력 라우팅: 서버에서 스킬 사용·구매 조건을 검사하고 GameplayTag로 입력을 분기했습니다.

📁 Repository README  |  🔗 Tech Docs

Fishing Is Good Unity Gameplay

🎥 웹에서 영상 보기


📌 형태: 개인 프로토타입

👤 구성: 개인 개발

🔧 주요 기술:

Fishing Is Good (HTML/Unity Prototype)

전통적인 낚시 미니게임보다, 물고기를 지켜보는 재미와 최소한의 개입에 초점을 둔 탑다운 낚시 프로토타입

방치형 게임에 맞게 반복 입력이나 타이밍 조작을 줄이고, 물고기의 움직임을 지켜보다가 찌를 놓을 위치를 고르는 플레이를 만들었습니다. 이를 위해 물고기의 이동과 반응을 빠르게 반복 검증할 수 있는 HTML 프로토타입을 먼저 만들고, 직접 플레이하며 남길 규칙을 정한 뒤 Unity에서 게임플레이와 수중 연출로 구현했습니다.

주요 작업:

  • 행동 검증: HTML 프로토타입에서 이동, 선회, 회피, 접근, 먹이 반응과 찌 배치에 따른 반응을 빠르게 비교하며 조정했습니다.
  • 낚시 흐름: 찌 배치 → 관심·접근 → 입질 → 회수 → 낚시 가방 도착 → 점수·수량 집계까지 구현했습니다.
  • 시각 표현: 어종별 메시 생성과 움직임 셰이더를 구현하고, 수면 굴절·그림자·착수 파문·렌즈 물방울·수중 카메라 전환을 제작했습니다.
  • 개발 방식: AI를 구현 대안 탐색과 반복 작업에 활용하고, 실제 실행 결과를 보며 채택·수정·폐기할 요소를 결정했습니다.

📁 Repository README  |  🌐 Browser Prototype

Tazan Gameplay GIF

🎥 시연 영상 보기


📅 기간: 2025.02 ~ 2025.03 (1개월)

👥 구성: 3인 팀 프로젝트

🔧 주요 기술:

Tazan (소울라이크 게임)

Poise 기반 경직 우선순위·패리·회피를 구현한 3인 팀 소울라이크 액션 게임

공격 강인도와 방어 강인도를 비교해 경직·Stagger를 판정하고, 행동 상태에 따라 패리·회피·차지 공격의 반응을 분기했습니다.

주요 구현 내용:

  • 강인도 기반 경직 시스템: 공격 강인도 vs 방어 강인도를 비교하고 경직 우선순위를 따져 상태를 갱신합니다.
  • Lock-on 타겟 선정: 화면 중심과 대상 거리를 이용해 타겟을 선정하고, 타겟과의 거리에 따라 카메라를 조정합니다.
  • 공격 충돌 판정: 이전·현재 프레임 위치 사이를 보간해 히트 검사를 수행하고 여러 히트박스를 처리했습니다.
  • 입력·애니메이션 연결: Enhanced Input과 AnimNotifyState로 패리·회피·콤보 입력 가능 구간을 제어했습니다.

📁 Repository README  |  🔗 Tech Docs

Dororong Work Gameplay GIF

🎥 시연 영상 보기


📅 기간: 25.08 (2D 게임잼)

👥 구성: 7인 팀 프로젝트 (게임팀 3, AI팀 4)

🔧 주요 기술:

Dororong World (Voice Command)

"도로롱, 제발 내 말좀 들어!!" - 음성 명령으로 팰을 조종하는 3D 자원 수집 게임

'AI와의 융합'을 주제로 한 게임잼에서 우승한 프로젝트입니다. 플레이어의 자연어 음성 명령을 AI가 분석하여 게임 내 '팰'에게 작업을 지시하는 직관적인 플레이 방식을 구현했습니다.

담당 개발 및 역할:

  • AI-게임 통신 시스템: FastAPI 서버와 Unreal Engine 클라이언트 간의 실시간 통신 파이프라인을 구축하고, 음성 데이터 전송 및 분석된 명령(JSON)을 수신하는 기능을 구현했습니다.
  • 음성 명령 라우팅 시스템: 수신된 JSON 데이터를 분석하여 '모두', '아무나', '개인(특정 대상)' 등 적절한 대상에게 명령을 전달하는 로직을 개발했습니다.
  • 핵심 게임 루프 구현: 플레이어 캐릭터의 움직임, 자원(나무, 돌, 광석) 시스템, 레벨업 및 엔딩으로 이어지는 전체 게임 사이클을 구현했습니다.

📁 Repository README

LostGPU Gameplay GIF

🎥 시연 영상 보기


📅 기간: 24.12 (1M)

👥 구성: 3인 팀 프로젝트

🔧 주요 기술:

LostGPU (100% Blueprint 액션 RPG)

Blueprint FSM과 데이터 테이블을 이용해 전투·보스 패턴을 구현한 액션 RPG

Unreal Engine 학습 초기의 팀 프로젝트로, C++ 없이 Blueprint에서 플레이어 액션, 보스 전투 FSM, 상태이상 및 레이드 진행을 구현했습니다.

담당 개발 및 역할:

  • FSM 기반 전투 로직: 플레이어의 스킬 시전 제약 및 대쉬 캔슬, 보스의 확률/사정거리 기반 '스킬 룰렛' 등 복잡한 전투 상호작용을 FSM으로 구현했습니다.
  • 스킬 데이터 분리: 공통 Base Skill Class와 DataTable에서 스킬 피해·쿨타임·상태이상을 조회하도록 구성했습니다.
  • 레이드 진행: 보스 선택 → Sequencer 컷신 → 갑옷·지형 파괴가 포함된 전투 → 승패 처리 흐름을 연결했습니다.

📁 Repository README

---

Profile Views

Pinned Loading

  1. AgentMcp AgentMcp Public

    Unreal Engine 5.5에서 AI 에이전트가 프로젝트를 분석하고 에디터 작업을 수행할 수 있도록 개발한 MCP 플러그인입니다. UE 5.8의 Agent Skill 개념을 참고한 Skill 시스템을 구현하고, UMG의 Widget Tree·BindWidget 계약을 분석하여 Widget Blueprint를 생성·편집하는 도구와 컴포넌트·데이터·스…

    C++

  2. Sonheim Sonheim Public

    Unreal Engine 5를 사용하여 개발한 3D 멀티플레이어 액션 어드벤처 게임입니다. 게임 내 몬스터 포획 및 전투, 아이템 수집/전투/협동에 기반한 멀티플레이 루프와 데이터 주도 아키텍처를 구현했습니다.

    C++ 4 1

  3. VALORANT VALORANT Public

    Unreal Engine 5와 GAS(GameplayAbilitySystem)를 사용하여 개발한 멀티플레이어 택티컬 FPS 게임입니다. 게임 내 에이전트 스킬, 인게임 상점 및 폭탄 설치 시스템을 구현했습니다.

    C++ 8 6

  4. VoiceCommand VoiceCommand Public

    2일 게임잼 우승작으로, Unreal Engine5을 사용하여 개발한 자원 수집 게임입니다. 자연어 음성 인식을 통해 몬스터에게 자원 수집 명령을 내리는 핵심 플레이와 다양한 상호작용을 구현했습니다.

    C++ 1

  5. FishingIsGood FishingIsGood Public

    Unity와 Three.js를 사용하여 개발한 탑다운 관찰형 낚시 프로토타입입니다. HTML 프로토타입에서 물고기의 이동·선회·회피·먹이 반응을 빠르게 검증하고, 선택한 행동 규칙을 Unity Runtime의 상태·어종별 데이터 구조와 어획·수집 게임플레이로 확장했습니다.

    HTML