728x90

분류 전체보기 191

[TeamProject2_2025.05.16] Unity 2D 팀 프로젝트 Oblivia 회고(1등!)

Unity 2D 팀 프로젝트 회고 | 《Oblivia》최근 진행한 Unity 팀 프로젝트를 마치고 회고를 남겨보려고 한다.정말 최고의 팀원들과 함께한 팀플이었다. 게임명 : Oblivia장르 : 탄막 슈팅 류 로그라이크개발 환경 : Unity 2022.3.17f1타켓 플렛폼 : Android, PC, Web개발 기간 : 2025.05.08 ~ 2025.05.15 Keep — 잘했던 점, 기억하고 싶은 순간들이번 프로젝트에서는 처음부터 오브젝트 풀링(Object Pooling) 시스템을 직접 설계하고 적용해봤다.게임 특성상 탄막 슈팅 장르이다 보니 많은 오브젝트가 빠르게 생성되고 사라지는 상황이 잦았는데, 풀링 시스템을 통해 성능 최적화를 효과적으로 이뤄낼 수 있었다. 특히, 팀 분위기가 굉장히 좋았다.적..

[TeamProject2_2025.05.15] SoundManager로 게임 사운드 시스템 구축

개발 배경로그라이크 게임을 만들면서 사운드 시스템이 필요했다.효과음이 겹치면 끊김씬이 전환되면 BGM이 끊김사운드 코드가 여기저기 퍼짐사운드 시스템이 없을경우 이러한 문제들이 발생할 수 있기때문에 SoundManager를 만들기로 했다. SoundManager 기본 구조[Scene Root]├── SoundManager ← 빈 GameObject (SoundManager 스크립트 부착)│ ├── BGMSource ← 배경음 전용 AudioSource│ ├── SFXSource ← 효과음 전용 AudioSource오브젝트설명SoundManager사운드 매니저 스크립트가 붙은 GameObjectBGMSource배경음용 AudioSource (loop, volume 조절 등)SFXSource효..

카테고리 없음 2025.05.15

[TeamProject2_2025.05.14] 오브젝트 풀링/적 시스템 직접 구현(구현편)

구현 목표설계편에서 정의한 내용을 바탕으로,Unity에서 오브젝트 풀링 시스템과 적 생성 시스템을 직접 구현 효율적인 리소스 관리: 오브젝트 풀링적 몬스터 스폰: 다양한 적 패턴 관리IPoolable 인터페이스: 오브젝트 상태 관리PoolManager 싱글톤: 풀 통합 관리 ✅ IPoolable 인터페이스public interface IPoolable{ void OnSpawned(); // 오브젝트가 풀에서 나올 때 호출 void OnDespawned(); // 오브젝트가 풀로 돌아갈 때 호출}오브젝트 풀에 들어가는 모든 오브젝트는OnSpawned(), OnDespawned() 메서드를 구현해초기화와 정리 작업을 할 수 있다. ✅ ObjectPool 클래스Object Pool 전체 ..

[TeamProject2_2025.05.13] 로그라이크 게임 설계 정리 (설계편)

프로젝트 개요이번 프로젝트는 로그라이크 + 모바일 최적화를 목표로 하는 Unity 게임기본 장르는 탑다운 슈팅 + 로그라이크 스타일이며, 아이작의 번제 같은 게임플레이를 참고했다. 개발 스택🎮 Unity 2022💻 Visual Studio / VSCode🎨 Aseprite (픽셀 아트 제작)🔗 GitHub, Slack (팀 협업)📂 데이터 저장: Scriptable Object (로컬 저장) 🗂️ 핵심 설계 개요[몬스터 디자인]잡몹 (근거리/원거리 랜덤)일반 몬스터 (Melee, Ranged 등)랜덤 생성엘리트 몬스터HP가 일정 이하일 때 도망 패턴 추가근거리/원거리 혼합 + 회피 행동(Evasion)보스 몬스터전략적 패턴 (예: 광역 스킬, 텔레포트 등)일반 몬스터와 다른 FSM 패턴 (보스..

[TeamProject2_2025.05.12] 제네릭 싱글톤(Singleton<T>) 유틸리티

게임 개발을 하다 보면 꼭 필요한 패턴 중 하나가 바로 싱글톤(Singleton) 이다. 특히 Unity에서는 게임 매니저, 사운드 매니저, 풀 매니저 등 전역에서 딱 하나만 존재해야 하는 오브젝트가 많기 때문에 싱글톤을 아주 자주 사용한다. 그래서 이번 팀프로젝트때는 재사용 가능한 제네릭 싱글톤(Singleton) 유틸리티를 만들어서 편하게 쓸 수 있게 하였다.그 내용을 정리해보려고 한다. ✅ Singleton 유틸리티 코드// 파일명: Singleton.csusing UnityEngine;public class Singleton : MonoBehaviour where T : MonoBehaviour{ public static T Instance { get; private set; } p..

[TeamProject2_2025.05.11] 프로젝트 기획, 우리팀 규칙

프로젝트 개요 유니티 2D프로젝트가 시작됐다.Fire&Water, 쿠키런, 궁수의 전설 게임중 하나의 장르를 골라 새로운 게임을 만들어내는 과제였다. 아래와 같이 역할 분담을 했다.--1------------------------------------------게임 로직(전투) : 플레이어 조작+플레이어에관련된 모든것-체력바 등(가상 키패드)게임 로직(그 외) : 보상을 선택 직전() 다음방으로 넘어가고, 방을 구성하는 등의 로직(반 만들기 시드값에 따라) --2------------------------------------------적(AI) 적을 생성하고 처치하는 것 까지의 과정(오브젝트 풀링, FSM 등등)적 생성, 적 상태패턴(움직임, 공격, 죽음), 적 생명력 관리, --3----------..

728x90