One Survival

  • 기간: 2024-07-14 ~ 계속
  • 프로젝트 설명: 2D 로그라이크 자동 공격 서바이벌 — 게임 프로그래머 / 솔로 프로젝트
  • 기술 스택: Unity, C#
  • Github URL: 프로젝트 링크

핵심 구현

  • 각 Enemy 애니메이션 대신 Texture Atlas와 단일 Mesh를 사용하고 UV를 GPU에서 계산하도록 하여 Draw Call을 줄이고 반복 렌더링 부하를 최소화했습니다.
  • Coroutine으로 주기적 동작을 구현하여 Update 호출을 줄이고 코드 복잡성을 낮췄습니다.
  • 적·아이템에 Object Pooling을 적용해 메모리를 최적화하고, 컴포넌트 수명주기를 OnEnable/OnDisable로 통일하여 인터페이스 기반 초기화를 관리했습니다.
  • 클라이언트와 서버를 연결해 로그인과 랭킹을 구현하여 플레이어 간 경쟁이 가능하도록 했습니다.
  • ScriptableObject로 데이터를 분리하고, 전체 ScriptableObject를 한 화면에서 보고·수정·저장하는 커스텀 툴을 제작해 튜닝 시간을 단축했습니다.
  • 캐릭터·적·무기·투사체·이펙트를 컴포넌트로 조합하고, 실행 순서·의존성 문제는 매니저와 이벤트 최소화로 완화했습니다.
  • 히트 플래시와 넉백 효과로 타격감을 강화했습니다.
  • 플레이어 기준으로 4개의 그리드만 이동시켜 성능을 유지하며 무한 맵처럼 보이게 구현했습니다.
  • 생존 시간과 누적 데미지에 따라 골드를 지급하고, 업그레이드에 사용하여 목표성을 강화했습니다.