VR Shuttle Bus Defense

VR 기반의 셔틀버스 방어 시뮬레이션 게임

프로젝트 개요

VR Shuttle Bus Defense는 팀 프로젝트로 진행된 VR 기반의 셔틀버스 방어 시뮬레이션 게임입니다. 이 프로젝트는 유니티 엔진과 Oculus VR을 기반으로 제작한 게임입니다. 플레이어는 셔틀버스를 방어하며 다양한 적들과 싸워 무사히 셔틀버스에 탑승하는 임무를 수행합니다. VR에 맞는 UI/UX 디자인이 적용하여 몰입감과 편리성을 중심으로 개발되었습니다.

장르
VR 디펜스
개발 언어
C#
개발 기간
5개월
시작 일자
2023.06.18
지원 플랫폼
PC, Oculus
개발자
서정현 등 9명

주요 특징

VR 몰입형 환경

기존 PC 게임의 한계를 넘어선 VR 환경에서 플레이어가 직접 몸을 움직이며 게임 세계에 완전히 몰입할 수 있는 경험을 제공합니다.

직관적인 VR UI/UX

VR 환경에 특화된 직관적인 인터페이스로 실제 손동작을 통한 자연스러운 상호작용이 가능하며, 멀미를 최소화한 편안한 사용자 경험을 제공합니다.

전략적 디펜스 게임플레이

다양한 무기와 스킬을 활용하여 셔틀버스를 방어하는 전략적 게임플레이로, 쉬운 조작법과 높은 전략성을 동시에 만족시키는 중독성 있는 경험을 선사합니다.

기술 사양

개발 도구

  • Unity 2021.3.20f1
  • Visual Studio
  • Blender
  • Oculus VR

기술적 특징

  • VR 환경에 최적화된 3D 공간 인터페이스 설계
  • 실시간 손동작 인식 및 물리 기반 상호작용 시스템
  • 다단계 난이도 조절이 가능한 AI 적 시스템

조작 방법

이동
Move
기본 이동: 컨트롤러 스틱으로 이동
Move2
고급 이동: 순간이동 및 점프
무기 조작
Weapon Pick
무기 획득: 손으로 잡기
Weapon Drop
무기 놓기: 잡은 상태에서 놓기
아이템 사용
Item Use
아이템 사용: 트리거 버튼
Item Use 2
고급 아이템 사용: 특정 제스처
스킬
Skill
스킬 사용: 메뉴 버튼 + 트리거
VR 조작 안내

이 게임은 VR 환경에 최적화되어 있습니다. 위의 조작법은 VR 컨트롤러의 제스처와 버튼을 통해 수행됩니다. 실제 손의 움직임과 컨트롤러의 트리거, 그립 버튼을 활용하여 몰입감 있는 게임플레이를 즐기실 수 있습니다.

구현 기능 직접 구현

아래의 모든 기능은 본인이 직접 설계 및 개발한 주요 시스템입니다.

🎮 UI 관리 시스템

UI 매니저

  • • 싱글톤 패턴 기반 중앙집중식 관리
  • • 체력 및 화폐 텍스트 실시간 업데이트
  • • 사인파 기반 목표 지점 부유 애니메이션
  • • 시각적 피드백 및 상태 표시

🤖 몬스터 & AI 시스템

몬스터 AI 상태 관리

  • • 체력 및 상태 효과(트랩/수면) 관리
  • • 데미지 처리 및 넉백 효과 적용
  • • 랜덤 외형 생성 및 아이템 드롭
  • • 사망 시 화폐/점수 지급 시스템

웨이브 기반 스폰 시스템

  • • 다중 스폰 포인트 및 랜덤 위치 선택
  • • 웨이브별 몬스터 수량 및 타이밍 조절
  • • 랜덤 몬스터 타입 선택 시스템
  • • GameManager 연동 스폰 추적

몬스터 데이터 시스템

  • • ScriptableObject 기반 데이터 구조
  • • 아이템 드롭, 코인, 체력 속성 정의
  • • 이동속도, 데미지, 스턴 저항 관리
  • • 구성 가능한 몬스터 특성 시스템

🛒 상점 & 아이템 시스템

아이템 선택 시스템

  • • 아이템 목록 관리 및 선택 상태 추적
  • • 구매 가능성 확인 및 시각적 피드백
  • • 화폐 부족 시 빨간색/충분 시 초록색 표시
  • • 동적 UI 업데이트 및 상태 전환

구매 효과 시스템

  • • 구매 처리 및 화폐 확인
  • • 시각적 코인 애니메이션 효과
  • • 오디오 피드백 통합
  • • 포괄적 구매 경험 제공

✨ 스킬 시스템

스킬 쿨다운 관리

  • • 다중 스킬 쿨다운 추적 시스템
  • • 동적 UI 업데이트 (텍스트, 이미지 Fill)
  • • 웨이브 기반 쿨다운 조정 (5%씩 감소)
  • • 수동 감소 및 완료 처리 기능

스킬 데이터 관리

  • • ScriptableObject 기반 스킬 상태
  • • 쿨다운, 힘, 데미지, 넉백 속성
  • • 객체 크기 및 효과 범위 정의
  • • 유연한 스킬 구성 시스템