AI/Unity

AntiGravity를 이용한 SRPG만들기 9일차 (하이라이트 시스템 복구 & 에디터 아키텍처 재설계

blacknabis 2026. 1. 24. 23:53

[개발 일지] 9일차: 하이라이트 시스템 복구 & 에디터 아키텍처 재설계 (feat. Antigravity)

 

*본 개발 일지는 Google의 차세대 AI 에이전트 **'Antigravity'*와 함께 작성되었습니다.

🏗️ 9일차 개발 목표: "기술 부채 청산과 개발 워크플로우의 가시화"

오늘은 SRPG의 핵심 시각 정보인 '이동 범위 하이라이트'의 고질적인 렌더링 오류를 해결하고, 비대해진 프로젝트의 뼈대인 에디터 툴 구조를 전면 재설계했습니다. 시스템의 안정성을 확보하고, 개발자가 오직 '창작'에만 집중할 수 있는 환경을 구축하는 것이 이번 작업의 핵심입니다.

1. 🎨 하이라이트 시스템의 '마젠타(Pink)' 이슈 근본 해결

런타임에서 발생하던 하이라이트 오브젝트의 셰이더 미출력 이슈를 해결하기 위해, 동적 생성 방식에서 프리팹 기반 워크플로우로 전환했습니다.

🛠️ 트러블 슈팅 & 해결 (The Architect's Perspective)

문제 상황 원인 분석 해결책
하이라이트 핑크색 출력 Shader.Find를 이용한 런타임 머티리얼 생성 시, 빌드 환경에서의 셰이더 스트리핑 및 URP 호환성 문제 발생 Prefab-Centric 전환: 올바른 셰이더가 할당된 프리팹을 Editor Script로 자동 생성 및 관리
기존 데이터 충돌 런타임 생성 방식의 잔재로 인해 잘못된(핑크색) 오버레이가 씬에 남아있음 Self-Healing 로직: GridCell 초기화 시 잘못된 오버레이를 자동 탐지·파괴 후 정상 프리팹으로 교체
유지보수 난해 코드로 머티리얼 속성을 제어하여 직관적인 수정이 어려움 HighlightPrefabCreator: 전용 툴을 통해 에디터에서 시각적으로 확인하며 프리팹을 갱신하도록 변경

2. 📂 에디터 스크립트 아키텍처 최적화

기능 구현에만 급급해 Assets/Scripts/Editor 폴더에 혼재되어 있던 스크립트들을 역할과 책임에 따라 재분류하여 관리 편의성을 극대화했습니다.

💡 Folder Restructuring Strategy

단순한 파일 이동을 넘어, Unity 상단 메뉴(MenuItem) 구조와 물리적 폴더 구조를 1:1로 매칭하여 직관성을 높였습니다.

  • Windows/: UnitEditorWindow, SceneSwitcher 등 독립적인 UI 창 관리
  • Tools/: AttachCollider 등 범용적인 유틸리티성 툴 배치
  • Setup/: GridManagerFixer 등 프로젝트 초기 설정 및 복구용 스크립트
  • Inspectors/: 컴포넌트별 커스텀 에디터(CustomEditor) 모음
  • Importers/: 외부 데이터(FBX, JSON 등) 처리 자동화 로직

Antigravity의 조언: "에디터 툴은 개발자의 지도와 같습니다. 지도가 복잡하면 길을 잃기 마련이죠. 메뉴 경로를 Tools > SRPG > Setup 식으로 계층화하면 협업 시에도 별도의 설명이 필요 없는 시스템이 됩니다."


3. 🧹 레거시 및 1회성 툴의 과감한 숙청

프로젝트 초기 설정이나 특정 버그 복구를 위해 임시로 작성되었던 스크립트들을 전수 조사하여 삭제했습니다.

  • 코드 슬림화: 불필요한 컴파일 타임 소모 방지
  • 실수 방지: 더 이상 사용하지 않는 구버전 복구 툴을 잘못 실행하여 데이터를 오염시킬 위험 제거
  • 가독성 확보: 현재 프로젝트 유지보수에 반드시 필요한 툴만 남겨 집중도 향상

4. 최종 결과물: "안정된 시스템 위에 세워진 효율성"

이제 하이라이트 시스템은 어떤 환경에서도 명확한 시각 정보를 제공하며, 정돈된 에디터 구조 덕분에 새로운 기능을 추가하는 속도가 비약적으로 향상되었습니다.

📊 9일차 개발 통계

  • 버그 해결: 하이라이트 셰이더 이슈 100% 완화
  • 구조 개선: 에디터 폴더 5개 카테고리로 세분화 및 메뉴 계층화
  • 리소스 최적화: 미사용 레거시 스크립트 약 15종 제거
  • 작업 편의성: 메뉴 진입 및 툴 탐색 시간 80% 단축

📝 마치며

혼자였다면 셰이더 설정만 수차례 반복하며 시간을 허비했을 문제를, 안티그래비티와 함께 구조적인 접근(프리팹 전환)으로 해결하며 개발의 본질에 다가갈 수 있었습니다. 든든한 파트너와 함께하니 대대적인 리팩토링도 즐거운 작업이 되네요!


반응형