T-005의 이양분이다. 서버가 엑셀 작업과 패킷 테스트를 끝내면 여기서 이어받는다.
배경
지금 클라가 표시할 수 있는 채취 산출물은 낚시 6종뿐이다. T-005가 끝나면 5산업 × 6등급 = 30종이 한 번에 들어온다.
⚠️ 표시 대상이 156종이 됐다 (2026-08-02 정정). 2026-08-01 산업 레벨 도입으로 레벨마다 6종이 붙어 산업 자원 150종 + 가챠 전용 6종이다. 아래 서술의 "30종"은 그 이전 시점 기준이며, 아이콘·툴팁 작업량이 5배다. → 아이템 1.3
- 아이템 TID가 산업별 10000 단위 대역으로 정리된다 (낚시
10001~, 농사20001~, …) - 낚시 아이템 TID가
1001~1006→10001~10006으로 이설된다. 클라에 TID를 하드코딩한 곳이 있으면 조용히 깨진다 — 전수 확인이 필요하다
할 일
◐ = 일부만 됐다 · 🎨 = 연출·리소스. 의도적 후순위다(메인 시스템이 선 뒤에 한다)
2026-09-16 — 메인 항목이 다 끝나 🎨(획득 표시)만 남았다. INDEX ▶ → 🎨로 옮긴다. 칸 위치의 서버 연동은 이 일감이 아니라 T-058 · T-044의 몫이다.
- [x] 채취 푸시로 5종 산업 아이템이 실제로 내려오는지 확인 ← T-005에서 넘어옴 (2026-07-31) 2026-08-27 실측 완료 — 5종 산업을 각각 적성 맞는 캐릭터로 배치해 보니 해당 산업의 아이템이 인벤토리로 들어온다
- [x] 클라에 아이템 TID를 상수로 박아 둔 곳이 있는지 전수 확인 (
1001~1006) → 0건.PlayerDataModel.cs:43에 설명용으로 쓰인 주석 하나뿐이라 이설의 영향을 받지 않는다 - [x] 인벤토리에 5종 산업 아이템 표시 (T-007과 함께)
→ 격자(당시
InventoryPresenter· 지금StorageGridPresenter)가ItemId를 키로 쓰는 범용 구조라 산업을 가리지 않는다. 🎨 아이콘은 뒤로 미뤘다 —SlotView.Bind에 대입 지점(TODO)만 열어 두었다. 이름·색으로 이미 구분되므로 기능은 서 있다 - [x] 희귀도 색상 적용 —
GlobalRarity색상값이Enum.xlsx에 이미 있다. 클라가 임의 색을 쓰지 않고 이 값을 따른다 (게임UI 4장) →RarityPalette.Get→SlotView.Bind. 가챠 결과 팝업도 같은 표를 쓴다 - [x]
산업별 필터·정렬 (게임UI 2.2 팝업 탭) (2026-09-16) → 필터는 두지 않기로 했다. 칸 200개를 탭이 함께 쓰는 격자라 일부만 보이면 빈 칸이 "사라진 아이템"처럼 읽힌다. 캐주얼 방치형의 관례대로 [정렬] 버튼 하나로 정리한다. 탭 줄 아래 도구 줄의 화살표(▼▲)가 자원(등급↓ → 산업 순 → TID)·캐릭터(등급↓ → TID → 개체 번호)를 줄 세우고, 그 순서를 클라가 세션 동안 기억한다(StorageToolPresenter→StorageSlotSource.Sort). 같은 줄에 일괄 담기가 함께 산다(T-056) · 특성 탭에서는 줄이 숨는다. 재접속해도 남는 자리는 서버 T-058 → 클라 T-044(드래그 이동과 함께) - [ ] 🎨 ◐ 채취 푸시 수신 시 획득 표시 — 일반 채취는 알림을 띄우지 않는다 (게임UI 2.3, P1).
희귀 이상만 위젯 내 조용한 표시
→ 골격은 이미 섰다(
9dee28b) — 위젯 수확 스트립이 배치된 칸을 그리고 게이지가 돈다. 남은 것은WidgetMiniSlotView의Harvest Text에 무엇을 얻었는지 띄우는 표현이라 연출 쪽이다. 캐릭터 스프라이트와 함께 뒤로 미뤄 뒀다 - [x] 중앙 UI 최하단 탭 자리 확보 (아래 참조) (2026-09-16)
→ 기존
Menu Presenter줄(인벤토리·거래 버튼)이 그 자리다 — 기획 6장 Q12 해소. 별도 층을 두지 않는다. 줄이pref 100 · flexH 0, 갈아 끼워지는 화면이flexH 1이라 버튼이 늘어도 슬롯 영역은 밀리지 않는다(씬에서 확인)
중앙 UI 최하단 탭 — 특별 이벤트 자리
중앙 UI 최하단에 탭 한 줄을 비워 둔다. 지금은 비어 있어도 되지만, 나중에 채취 루프 바깥의 콘텐츠가 여기로 들어온다.
| 들어올 후보 | 근거 |
|---|---|
| 보스 | 사냥에서 티켓을 모아 도전. 채취 루프 밖으로 나가는 유일한 통로 → 사냥 4장 |
| 대형 작업물 채취 | 여러 슬롯·시간을 들여 하나를 캐는 형태 (미기획) |
| 기타 기간·조건부 이벤트 | 미기획 |
요구사항은 "자리를 만들어 두는 것"이지 콘텐츠를 만드는 것이 아니다.
- 중앙은 작업슬롯 전용이고(방향제안 2장), 최하단 탭은 그 아래 별도 층이다
- 탭이 늘어나도 슬롯 영역이 밀리거나 줄지 않게 레이아웃을 잡는다
- 비어 있을 때는 탭 줄 자체를 숨긴다. 잠긴 탭을 보여 주면 "지금 못 하는 것"이 상시로 눈에 남는다
⚠️ P1을 지키는 선은 보스 기획에 이미 있다 (사냥 4.2) — 도전 시점 자유 · 실시간 조작 없음 · 실패해도 티켓만 손실 · 기간 한정 없음. 이 탭에 들어오는 것은 무엇이든 같은 선을 지킨다. 배지·타이머·"오늘까지" 표시를 붙이지 않는다. 붙이는 순간 상시 위젯이 재촉하는 물건이 된다.
⚠️ 연출은 큰 창에서만 돌린다 (방향제안 8.2). 상시 위젯은 텍스트+게이지 유지. 창을 닫으면 그리기를 멈춘다 — 상시 실행 앱에서 리소스는 기능이 아니라 생존 조건이다.
완료 조건
5종 산업을 슬롯에 배치했을 때 각 산업의 아이템이 실제로 내려와 인벤토리에 희귀도 색으로 정상 표시되고, 중앙 UI 최하단에 탭을 추가해도 슬롯 레이아웃이 흔들리지 않는다.
막고 있는 것 / 선행 일감
T-005 2단계— 서버 측은 끝났다 (2026-07-31). 엑셀 30종 + 드롭 시트 5종 생성,DropTableCatalog등록, 빌드·테스트 통과, 서버 기동 시 "드롭 테이블 5개 등록 완료" 확인. 클라 착수 가능 상태다- T-007(인벤토리·재화 UI) — 표시 대상이 겹친다. 함께 하는 편이 낫다
- T-006(작업슬롯 UI) — 중앙 UI 레이아웃의 주인
관련 커밋
53f71d3— 가챠 결과 팝업 추가. 희귀도 색상이 여기서 들어왔다 (RarityPalette신규 ·SlotView.Bind에 등급 인자)9dee28b— 상주 위젯에 요약 줄과 수확 스트립 추가 (획득 표시의 자리까지)
참고
GameDesign/design/ui/README.md2장 · 4장 (희귀도 색상) · 6장 Q7·Q8GameDesign/design/ui/게임UI목업(2026-07-30 업데이트).htmlGameDesign/design/proposals/2026-07-30/2026-07-30-종합제안정리.md2장(3열 배치) · 8장(연출 2레이어)