37 lines
2.3 KiB
Markdown
37 lines
2.3 KiB
Markdown
---
|
|
id: Skybound-Modular-Game-Architecture
|
|
category: Dev
|
|
tags: [Clean-Architecture, Game-Engine, Vite, TypeScript, Skybound]
|
|
confidence_score: 0.97
|
|
last_reinforced: 2026-04-21
|
|
---
|
|
|
|
# Skybound Modular Game Architecture
|
|
|
|
## 1. Overview
|
|
Skybound Protocol은 React와 TypeScript 위에서 동작하는 고도로 모듈화된 게임 아키텍처를 채택하고 있다. 이는 UI 관리의 편의성과 고성능 Canvas 렌더링을 결합한 하이브리드 접근 방식이다.
|
|
|
|
## 2. Layered Structure
|
|
### 2.1. Core Engine Layer
|
|
- **useGameEngine**: 게임의 심장부로, 60FPS의 메인 루프를 관리한다. `Update`와 `Render` 루프를 엄격히 분리하여 로직 연산과 시각적 표현의 일관성을 유지한다.
|
|
- **System Manager**: 모든 `GameSystem`(StageDirector, Combat, Spawner 등)을 순차적으로 업데이트하는 오케스트레이션 수행.
|
|
|
|
### 2.2. Tactical Layer
|
|
- **Combat System**: 원형 및 AABB 충돌 알고리즘을 통한 물리적 상호작용 처리.
|
|
- **Asset System**: `sprite_atlas.json`을 통해 엔티티의 그래픽 데이터를 중앙 집중 관리하며, 픽셀 퍼펙트한 추출을 보장한다.
|
|
|
|
### 2.3. Strategy Layer
|
|
- **Supply Systems (Air-drop)**: `Capture Area` 로직을 통해 플레이어에게 보상을 제공하는 전술적 상점/보급 요소.
|
|
- **Hazard Systems**: 파괴 가능한 장애물과 기능적 환경 요소들을 통한 맵의 변별력 확보.
|
|
|
|
## 3. RL Update & Strategic Insight
|
|
### 🎯 Policy Evolution
|
|
- **과거 정책**: 거대 객체(God Object) 중심의 모노리스 구조. 기능 추가 시마다 사이드 이펙트 발생 빈도가 높았음.
|
|
- **현대적 정책 (Ps-Reinforce)**: '전략적 분리(Strategic Decoupling)' 정책. 각 시스템은 `GameContext` 인터페이스를 통해서만 소통하며, 상태 변화는 원자적으로 이루어짐.
|
|
- **Strategic Insight**: 게임 데이터와 프리젠테이션 레이어의 완벽한 분리는 차후 웹 환경뿐만 아니라 크로스 플랫폼(Native Wrapper) 확장 시에도 코드 재사용성을 극대화하는 기반이 된다.
|
|
|
|
## 4. Related
|
|
- [[Stage-Director-and-World-Tension-Scaling|Stage-Director-and-World-Tension-Scaling]]
|
|
- [[State-Machine-and-Phase-Transition-Events|State-Machine-and-Phase-Transition-Events]]
|
|
- Combat-System-Core
|