Files
jklee 08ea11ea37 Initial commit: WMS 교육 시뮬레이터 (입고 모듈 골격)
- Unity 6.4 URP 프로젝트 베이스
- Inbound 비즈니스 로직: Scan/Putaway/Scoring 서비스 + InboundManager
- 데이터 모델: Item/Location/Scenario (ScriptableObject) + StorageZone
- 샘플 시나리오 inbound_basic.json, 설계문서/목업 포함

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-14 19:09:29 +09:00

68 lines
2.9 KiB
Markdown

# SINO VR WMS — 교육 시뮬레이터 설계 (MVP)
## 0. 목표
WMS 업무를 "게임처럼" 익히는 교육 프로그램. 첫 모듈은 **입고(Inbound)**.
실제 창고 업무 흐름을 미션으로 만들고, 잘못된 처리에 감점/피드백을 준다.
## 1. MVP 범위 (입고 모듈)
- 시점: **탑다운(창고 관리 뷰)** — 3D 작업 최소화, WMS 가치 빠르게 전달
- 핵심 UI: **PDA 스캔** (바코드 스캔 → 검증 → 처리)
### 업무 흐름 (미션 단계)
1. **입고예정 확인** — 오늘 들어올 ASN/입고예정 리스트 확인
2. **바코드 스캔** — 도착한 박스/팔레트 스캔
3. **가입고(검수) 처리** — 예정 수량 vs 실수량 비교, 차이 발생 시 분기
4. **로케이션 추천/선택** — 적치할 위치 결정 (용량/존 규칙 검증)
5. **적치(Putaway)** — 선택한 로케이션에 재고 반영
6. **완료 & 채점** — 처리 시간 + 정확도로 점수, 오류 피드백
### 오류/감점 케이스 (교육 포인트)
- 잘못된 품목 스캔 (바코드 불일치)
- 예정 수량과 실수량 불일치 미처리
- 용량 초과 로케이션에 적치
- 존(보관 조건) 위반 적치 (예: 냉장품을 상온존에)
- 미할당 품목 방치
## 2. 데이터 모델 (코드는 Unity Assets/Scripts/Data)
모든 교육 컨텐츠는 코드가 아닌 **데이터로 분리** → 고객사별 시나리오 교체 용이.
- `ItemDefinition` (품목): SKU, 이름, 바코드, 보관조건(존), 단위부피
- `LocationDefinition` (로케이션): ID, 존, 최대용량, 좌표
- `InboundScenario` (입고 시나리오): 입고예정 라인 목록 + 함정(실수량 차이 등)
- 런타임 상태는 ScriptableObject가 아닌 일반 C# 클래스로 보관
## 3. 런타임 구조
```
GameManager // 전체 흐름/씬 상태
└ InboundManager // 입고 미션 진행(단계 전이)
├ ScanService // 바코드 스캔 검증
├ PutawayService // 로케이션 규칙 검증/적치
└ ScoringSystem // 점수/오류 집계
UI
├ PdaView // PDA 스캔 화면
├ InboundListView // 입고예정 리스트
└ ResultView // 채점 결과
```
## 4. 폴더 구조 (Unity)
```
Assets/
Scripts/
Core/ # GameManager, 흐름 enum
Data/ # ScriptableObject 정의 (Item/Location/Scenario)
Inbound/ # InboundManager, Scan/Putaway/Scoring
UI/ # 뷰 스크립트
Data/ # .asset (ScriptableObject 인스턴스)
Scenes/ # Warehouse_Inbound.unity
Prefabs/ # Pallet, Box, LocationSlot
Resources/Scenarios/ # JSON 시나리오 (런타임 로드용)
```
## 5. 다음 단계 (이 골격 이후)
- [ ] Unity 6 LTS 프로젝트 생성 후 `Assets/` 복사
- [ ] 탑다운 카메라 + 창고 그리드 씬 구성
- [ ] PDA UI 프리팹 (uGUI 또는 UI Toolkit)
- [ ] 로케이션 슬롯 프리팹 + 적치 애니메이션
- [ ] 채점 결과 화면
- [ ] 2번째 모듈(피킹) 확장