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>
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
# 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번째 모듈(피킹) 확장
|
||||
Reference in New Issue
Block a user