Skip to content

Repository files navigation

ProjectR

UE5.6 포스트 아포칼립스 TPS 프로젝트

Unreal Engine C++ Platform Genre


🎥 시연 영상

ProjectR 시연 영상


🎮 게임 소개

포스트 아포칼립스 세계를 배경으로 한 UE5 기반 TPS 프로젝트

ProjectR은 무기 중심의 전투와 회피, 그로기 게이지, 체크포인트 기반 진행을 사용하는 TPS 게임입니다.

거점에서 장비를 정비하고 전투 지역으로 이동한 뒤, 일반 몬스터와 교전하고 체크포인트를 거쳐 보스 아레나에 진입합니다. 세션을 생성해 다른 플레이어와 함께 플레이할 수 있습니다.

flowchart TD
    A([거점 진입]) --> B[장비 및 아이템 정비]
    B --> C[전투 지역 선택]
    C --> D[탐험 및 일반 몬스터 전투]
    D --> E[체크포인트 활성화]
    E --> F[보스 아레나 진입]
    F --> G[보스 페이즈별 공략]
    G --> H{보스 처치}
    H -->|성공| I[보상 획득 및 거점 귀환]
    H -->|실패| J[활성 체크포인트에서 부활]
    J --> D
    I --> B
Loading

사격, 회피, 스태미너 관리, 무기 Mod 사용, 그로기 게이지를 활용해 전투를 진행합니다.


📅 개발 기간

2026.04.16 ~ 2026.06.17


🏗️ 기술 스택

구분 사용 기술
엔진 Unreal Engine 5.6
언어 C++17
게임플레이 Gameplay Ability System, Enhanced Input
UI CommonUI, UMG
플랫폼 Windows
네트워크 OnlineSubsystemNull 기반 LAN 세션

⚙️ 주요 시스템

시스템 설명
무기 중심 전투 사격, 조준, 재장전, 반동, 약점 판정을 포함한 TPS 전투
회피 및 플레이어 생존 스태미너를 소모하는 회피와 사망·부활·소생 처리
그로기 및 전투 게이지 적 그로기 게이지와 무기 Mod 게이지를 사용하는 전투 상태 처리
무기 Mod 무기에 Mod를 장착하고 전투 중 충전된 자원을 사용
일반 및 보스 AI 일반 몬스터의 전투 행동과 보스의 페이즈·패턴 처리
체크포인트 및 보스 아레나 체크포인트 활성화, 사망 후 부활, 보스 구역 진입 및 초기화
아이템 및 장비 무기, Mod, 소모품, 탄약, 인벤토리 및 장비 슬롯 관리
세션 플레이 OnlineSubsystemNull을 통한 LAN 세션 생성, 검색, 참가
UI 전투 HUD, 보스 체력바, 인벤토리, 상점, 웨이포인트, 크로스헤어

🧩 시스템 아키텍처

GameInstance / Subsystem
├── 세션 및 저장 데이터 관리
├── 이벤트 매니저
├── 리스폰 및 로딩 화면 관리
└── 월드 틱 최적화

World
├── 거점 및 전투 지역
├── 체크포인트 / 웨이포인트
├── 보스 스포너 및 아레나 제어
├── 아이템 드롭 및 픽업
└── 상호작용 액터

Player Character
├── Gameplay Ability System
├── 무기 및 장비 컴포넌트
├── 인벤토리 / 퀵슬롯
├── 플레이어 성장 및 재화
└── HUD / UI 연동

Enemy / Boss Character
├── 일반 몬스터 AI
├── 보스 페이즈 및 패턴
├── 그로기 / 약점 / 피해 처리
└── 투사체 및 범위 공격

📁 프로젝트 구조

ProjectR/
├── Source/ProjectR/
│   ├── AbilitySystem/   # Gameplay Ability, Attribute, Effect, 피해 계산
│   ├── AI/              # 일반 몬스터 및 보스 AI, 행동 패턴
│   ├── Animation/       # 캐릭터·무기 애니메이션 및 노티파이
│   ├── Audio/           # BGM 및 사운드 시스템
│   ├── Character/       # 플레이어·적·보스 캐릭터
│   ├── Combat/          # 전투 판정, 피해 수신, 약점 및 전투 타입
│   ├── Drone/           # 드론 액터 및 관련 기능
│   ├── FX/              # 전투 이펙트, 피격 임팩트, 네트워크 연동
│   ├── Game/             # GameMode, GameState, GameInstance, 저장
│   ├── Input/            # Enhanced Input 설정 및 입력 라우팅
│   ├── Interaction/      # 상호작용 센서, 인터페이스, 상호작용 액션
│   ├── ItemSystem/       # 아이템, 인벤토리, 장비, 무기 및 Mod
│   ├── Player/           # 플레이어 컨트롤러, 상태, 카메라, 컴포넌트
│   ├── Projectile/       # 플레이어·적 투사체 및 투사체 관리자
│   ├── Shop/             # 상점 데이터 및 구매 처리
│   ├── System/           # 에셋, 로딩, 이벤트, 리스폰, 틱 관리
│   ├── UI/               # HUD, 인벤토리, 상점, 메뉴, 웨이포인트
│   ├── Utils/            # 공용 유틸리티
│   └── World/            # 스폰, 드롭, 체크포인트, 보스 아레나
├── Content/              # 언리얼 에셋
├── Config/               # 엔진 및 프로젝트 설정
└── Docs/                 # 기획서, 상세 설계서, 튜토리얼

🚀 실행 방법

요구 사항

  • Unreal Engine 5.6
  • Visual Studio 2022
  • Windows 환경

실행 순서

  1. ProjectR.uproject를 Unreal Engine 5.6으로 실행
  2. 에디터에서 프로젝트를 빌드하거나 Visual Studio에서 Development Editor 구성을 빌드
  3. 에디터의 Play 버튼으로 게임을 실행

세션 플레이

  1. 시작 화면에서 StartHost를 선택해 LAN 세션을 생성
  2. 다른 플레이어는 시작 화면에서 Join을 선택
  3. OnlineSubsystemNull이 검색한 세션 중 첫 번째 세션에 참가

🎮 기본 조작

입력 동작
W / A / S / D 이동
SHIFT 달리기
SPACE BAR 회피
ALT 앉기
좌클릭 사격
우클릭 조준
R 재장전
F 무기 Mod 사용
휠 스크롤 무기 변경
E 상호작용
TAB 인벤토리 열기
1 / 2 / 3 / 4 퀵슬롯 사용

👨‍💻 개발자

배유찬

baeyc0510 GitHub
김동석

dsw2679 GitHub
손승우

kosse03 GitHub
이건주

Username-YMIR GitHub

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages