관리 메뉴

cyphen156

[React Native] Teamony 본문

포트폴리오

[React Native] Teamony

cyphen156 2025. 9. 15. 11:06

프로젝트 소개

React Native Firebase를 활용한 대학생들을 위한 팀 프로젝트 관리 애플리케이션입니다.

캘린더를 통한 개인 및 팀 일정 관리 기능, 대시보드, SNS기능을 설계·구현했습니다.
싱글 → 로컬/근거리 네트워크 멀티플레이로 확장하며, 데이터/정책 분리를 통해 기능 교체와 컴포넌트 단위 개발을 통해 테스트를 용이하게 했습니다.

  • 팀 구성 : 오융택(팀장/본인), 박지후(팀원), 전명재(팀)
  • 개발 기간 : 2023.01.02 ~ 2023.05.16 (18일)
  • 기획 의도 : Unity NetCode를 활용한 배틀로얄 게임 개발
  • 개발 목표
    •  Unity Netcode 기반 Host-Client 멀티플레이 구조 구현
    • 플레이어의 시야를 제한하여 긴장감 있는 전투 연출
    • 인벤토리/장비 슬롯 시스템 구축
    • 엄폐물을 배치로 전략성 강화
    • FSM으로 전체 게임 흐름 제어

수행 역할

  • 게임 시스템 : 상태 FSM, 게임 루프/타이머, 이벤트 브로드캐스팅
  • 네트워크 : RPC/NetworkVariable 설계, Host 권한 위임 정책
  • 전투/판정 : 총기 FSM, 충돌/피격 처리, 오브젝트 풀링
  • UI/이벤트 : 결과 이벤트 발행, UI 구독 구조 정리

핵심 기능

  • 멀티플레이(Netcode) : Host 기준 이동·상태 동기화, 시스템 이벤트 브로드캐스팅
  • 플레이어 시야 제한 : Raycast 탐지 + 마스킹
  • 플레이어 FSM : 체력/장비/버프 등 상태 관리 및 UI 반영
  • 총기 FSM : 사격/재장전/쿨타임 상태 전이
  • 아이템 파밍/사용 : 랜덤  드롭박스 파밍, 소비형/장착형 처리
  • 인벤토리·총기 부착물 슬롯 : 슬롯–아이템 매핑, UI 동기화
  • 오브젝트 풀링 : 총알/이펙트 재사용

실행 방법 (Windows 빌드)

  1. ProjectK.zip 다운로드
  2. 압축 해제 → ProjectK.exe 실행
  3. 게임 플레이 : PC1에서 Host 시작 → PC2에서 Client 접속 (필수 : 동일 네트워크)

기술 스택

  • 엔진 : Unity 6 (6.0.34f1)
  • 언어 : C#
  • 네트워크 : Unity Netcode for GameObjects
  • 버전관리 : GitHub Desktop
  • 데이터 : CSV 

시연 자료

저장소