언리얼 엔진 5 C++ 기반의 교육용 화재 대피 시뮬레이션으로,
멀티플레이 환경에서 사용자에게 위험 상황 인지 및 올바른 대피 행동을 학습시키는 것을 목표로 한 프로젝트입니다.
- 장르: 교육용 시뮬레이션 / 협동 멀티플레이
- 플랫폼: PC
- 개발 엔진: Unreal Engine 5
- 개발 언어: C++
- 개발 인원: 3인 팀 프로젝트
- 개발 기간: 2025.10 – 2025.11(4주)
- Engine: Unreal Engine 5
- Language: C++
- Data: DataTable, DataAsset, CSV(Excel)
- Collaboration Tools: Git, Excel, Discord
- ETC: Steam Online Subsystem
- 기획, 일정 관리 및 팀 내 조율
- 회의 진행 및 커뮤니케이션 허브 역할 수행
- 교육용 시스템 구조 및 시나리오 설계 및 구현
- 기획 친화적인 데이터 파이프라인 설계 주도
- 컴포넌트 기반 NPC 및 오브젝트 시스템 구현
- 멀티플레이 환경에서의 상호작용 동기화 처리
- 협업 중심의 데이터 파이프라인 구축 (엑셀 기반)
- A* Pathfinding 알고리즘을 활용한 최단 경로 탐색
- 화재 발생 시:
- 위험 지역 회피
- 출구 및 안전 지점 우선 탐색
- 멀티플레이 환경에서도 동일한 경로 판단 기준 유지
- NPC 상태에 따른 이동 속도 및 행동 분기 처리
기술 포인트
- 정적 네비게이션 데이터 기반 탐색
- 상황 변화(화재 확산)에 따른 경로 재계산 구조 설계
→ 교육 시나리오에 따라 안정적이고 예측 가능한 이동 제공
- Excel(CSV) → DataTable 파이프라인 기반 대사 관리
- 기획자가 엑셀만으로 다음 요소를 제어 가능:
- 대사 내용
- 화자
- 선택지
- 다음 대사 분기
주요 기능
- 선택지 기반 분기 대화 구조
- 대사 종료 시 이벤트 태그(EventTag)를 통한 게임 로직 연동
- 이미지·영상 등 시각 자료를 대사와 함께 동적 로딩
기술 포인트
- 하드코딩 제거 → 유지보수 및 시나리오 수정 비용 감소
- 다이얼로그 시스템과 게임플레이 로직 간 느슨한 결합 구조
- 결과 : 완성도 높은 교육용 시뮬레이션 프로젝트 완성 및 멀티플레이 시연
- 잘한점 : 난이도 있는 기술적 구현 시도 및 성공, 레벨 디자인을 통한 학습 내용의 적절한 배치
- 아쉬운점 : 패키징 후 일부 동기화 버그 발생, 아쉬운 UI
- 🎥 시연 영상