AI/Unity

AntiGravity를 이용한 SRPG만들기 5일차

blacknabis 2026. 1. 13. 01:10

[Unity/DevLog] AI '안티그래비티'와 함께 0부터 만드는 정통 SRPG - 5일차

📢 개발 개요: 전장에 생동감을 불어넣다 (VFX, 사운드, 상태이상, 아이템)

"코드로 뼈대를 세웠다면, 이제는 영혼을 불어넣을 차례입니다."

안녕하세요! **'안티그래비티'**와 함께하는 SRPG 개발 5일차입니다. 지난 4일차에 38개의 방대한 스킬 데이터를 구축했다면, 오늘은 그 스킬들이 실제로 화면에서 번쩍이고(VFX), 소리가 나며(Sound), 전장에 지속적인 영향(Status Effect)을 미치도록 시스템을 고도화했습니다. 또한, 전투의 변수를 창출하는 아이템 및 장비 시스템도 함께 구현되었습니다.


1. 상태이상 시스템: 14종의 전술적 변수 🔥❄️

단순한 데미지 교환을 넘어, 지속적인 전술적 선택을 강요하는 상태이상(Status Effect) 시스템을 구축했습니다.

  • 자동화된 데이터 생성: StatusEffectGenerator를 통해 14종의 상태이상 데이터를 단 1초 만에 생성했습니다.
  • 다양한 효과 구현:
    • DoT (지속 피해): Burn(화상), Poison(독)
    • 행동 제어: Stun(기절), Sleep(수면), Silence(침묵)
    • 스탯 변화: Attack Up/Down, Defense Up/Down, Speed Up/Slow
  • 시각적 피드백: 유닛 머리 위에 남은 턴 수와 함께 상태 아이콘이 표시되도록 UnitInfoUI를 개선했습니다.

2. 감각적 피드백: VFX 오토메이션 & 사운드 시스템 ✨🔊

전투의 타격감을 책임지는 시각(VFX)과 청각(Sound) 요소를 시스템에 통합했습니다.

🤖 VFX 오토메이션 (VFX Generator & Linker)

수십 개의 스킬에 이펙트를 하나하나 연결하는 반복 작업을 AI 자동화로 해결했습니다.

  • VFXGenerator: 파티클 시스템 기반의 기본 이펙트 프리팹(Fire, Ice, Heal, Buff 등)을 코드로 자동 생성.
  • SkillVFXLinker: 스킬 이름(예: "Fireball")을 분석하여 적절한 VFX 프리팹("VFX_Fire")을 찾아 자동으로 연결.

🎧 사운드 매니저 (Sound Manager)

  • BGM/SFX 분리: 배경음과 효과음을 개별 채널로 관리하는 SoundManager 구축.
  • 전투 연동: 전투 시작 시 BGM 자동 재생, 스킬 사용/피격 시 SFX 자동 재생 로직을 BattleManager와 Unit에 통합.

3. 아이템 & 장비 시스템: 보급과 무장 🎒⚔️

RPG의 필수 요소인 인벤토리와 장비 시스템을 구현하여 성장의 재미를 더했습니다.

  • 통합 인벤토리: GameManager에서 파티 공용 인벤토리를 관리.
  • 전투 중 아이템 사용: Action Menu에 [Item] 버튼을 추가하여, 포션(Potion) 등을 통해 위기의 아군을 즉각 치유할 수 있습니다.
  • 장비 시스템 (Equipment):
    • UnitData에 무기/방어구 슬롯 추가.
    • Iron Sword 등 장비 장착 시, 전투 진입 단계(Unit.Setup)에서 자동으로 공격력/방어력 보너스가 합산 적용됩니다.

4. MCP를 활용한 문제 해결 (Troubleshooting) 🛠️

오늘도 개발 도중 발생한 난관들을 MCP(Model Context Protocol)를 통해 신속하게 해결했습니다.

이슈 (Issue) 원인 (Cause) 해결 (Solution)
컴파일 에러 HighlightType.Skill 및 HighlightTile 메서드 누락 AI가 GridManager.cs를 분석하여 누락된 정의 즉시 추가
UI 중복 호출 ItemListUI 클릭 이벤트가 중복 등록됨 리스너 초기화(RemoveAllListeners) 후 구조 리팩토링
스탯 원본 훼손 ScriptableObject인 UnitData를 직접 수정 UnitStats.Clone()을 구현하여 전투 시 깊은 복사 사용
VFX 미출력 인스턴스화(Instantiate) 로직 부재 PerformSkillAction 코루틴에 VFX 생성 로직 추가

📊 5일차 개발 통계

  • 생성된 상태이상 데이터: 14개 (Burn, Stun, Haste 등)
  • 자동 생성된 VFX 프리팹: 8종 (속성별 기본 이펙트)
  • 구현 시스템: 상태이상, 사운드, 아이템/장비, 인벤토리
  • 수정된 스크립트: 12개

📝 5일차 개발을 마치며

"시스템은 복잡해졌지만, 관리 포인트는 줄어들었습니다."

모든 스킬과 이펙트, 상태이상을 수동으로 연결했다면 며칠이 걸렸을 작업을 **'에디터 스크립트 자동화'**를 통해 몇 분 만에 끝냈습니다. AI가 단순 반복 작업을 처리하는 동안, 개발자는 어떤 상태이상이 전투를 더 재밌게 만들지 **'기획'**에 더 집중할 수 있었습니다.

다음 단계: 이제 시스템의 외형은 갖춰졌습니다. 다음 시간에는 플레이어를 긴장하게 만들 **'똑똑한 적군 AI (Enemy Intelligence)'**를 구현하고, 실제 스테이지 레벨 디자인을 진행해 보겠습니다!

"AI는 시간을 벌어주고, 개발자는 재미를 만듭니다."

반응형