2026-09-20 QA 피드백에서 왔다 (
0920-피드백 및 답변 정리.md3·4번).
배경
자원만 150종이 넘고, 탭마다 칸이 200개다. 원하는 것을 눈으로 찾는 수밖에 없다.
검색과 필터를 한 일감으로 묶은 이유 — 둘이 같은 동작이다. "격자에 일부만 보이게 한다"이고,
거르는 자리도(StorageSlotSource) 화면도(도구 줄) 같다. 따로 만들면 아래의 같은 판단을 두 번 한다.
서버는 필요 없다. 지금 탭의 공급자가 들고 있는 목록을 클라에서 거르면 끝난다.
📎 200칸은 클라 프레임 수일 뿐 서버 한도가 아니다 (2026-09-20 확인) — 서버에 한도가 없어 넘치면 뒤가 잘리고 경고 로그만 남는다. 한도·뽑기 거절은 T-063, 안내는 T-064가 맡는다(✅ 2026-09-25). 이 일감은 한도와 무관하게 "지금 보이는 것 중에서 찾기"만 한다.
⚠️ 기존 결정을 뒤집는 일감이다.
Storage 규칙.md에 "산업별로 걸러 보이지 않는다 — 칸 200개를 탭이 함께 쓰는 격자라 일부만 보이면 빈 칸이 '사라진 아이템'처럼 읽힌다" 가 적혀 있다. 이 일감은 그 결정을 뒤집는 대신 그 문제를 푼다 — 그래서 할 일의 첫 줄이 "거르는 동안 격자를 어떻게 보일지"다.
할 일
- [x] 거르는 동안의 격자 표시를 먼저 정한다 — 결과 수만큼만 칸을 보일지 / 전부 두고 배너로 알릴지.
⚠️ 프레임 200개를 켜고 끄면 레이아웃 리빌드가 200번 돈다(
Storage 규칙.md) — 상시 실행 앱이라 비용을 잰다 - [x] 거르는 자리 =
StorageSlotSource(Fill전). 세션 정렬 기억(Key별 자리)과 충돌하지 않게 한다 — 걸러서 앞으로 당겨진 자리가 기억으로 굳으면 필터를 풀었을 때 순서가 어긋난다 - [x] 검색창 — 도구 줄(
StorageToolPresenter)에 한 칸. 입력하는 대로 반영하고, 탭을 바꾸거나 창을 닫으면 비운다(거른 상태로 남으면 다음에 열 때 "아이템이 사라졌다"가 된다) - [x] 필터 — 축이 탭마다 다르다: 자원 = 산업 + 희귀도 / 캐릭터 = 희귀도 / 장비 = 희귀도 + 대상 산업. 탭이 바뀌면 쓸 수 없는 축은 감춘다
- [x] 결과 0건일 때의 안내 — 빈 격자만 남기지 않는다
- [x] 특성 탭에서는 도구 줄이 통째로 사라진다 — 새 위젯도 그 규칙을 그대로 탄다
- [x]
Storage 규칙.md갱신 — "걸러 보이지 않는다"를 실제 결정으로 바꿔 적는다 - [x] 실측 — 탭별 검색 · 필터 · 초기화 · 필터 중 채취/판매로 목록이 바뀌는 경우
2026-09-29 구현: 맞는 것을 앞으로, 안 맞는 것은 뒤에 흑백으로 모은다(자리 기억은 전체 기준 유지 → 풀면 원래 배치). 처음엔 맞는 것만 남겼다가 창고가 비어 보여 바꿨다. 0건이면 격자 가운데 안내 · 조건을 바꾸면 맨 위로 스크롤. 도구 줄을 두 줄(75)로 — 2줄에 검색·산업·등급·[초기화]. 캐릭터 탭은 산업 드롭다운을 감춘다.
완료 조건
세 탭 어디서든 이름 일부를 치면 그 항목만 남고, 산업·희귀도를 고르면 해당하는 것만 남는다. 필터를 풀면 원래 자리로 돌아오고, 거르는 중에 채취·판매로 목록이 바뀌어도 화면이 깨지지 않는다.
막고 있는 것 / 선행 일감
- 없음 (서버 없이 끝난다)
관련 커밋
- 이 커밋 — 검색·산업·등급 필터 — 맞는 것 앞 · 안 맞는 것 뒤에 흑백
참고
Assets/Scripts_Client/UI/Storage/StorageToolPresenter/— 도구 줄(정렬 화살표 · 일괄 담기가 산다)Assets/Scripts_Client/UI/Storage/StorageGridPresenter/StorageSlotSource.cs— 거르는 자리Storage 규칙.md— 도구 줄 · 정렬 · 200칸 격자- 같은 도구 줄에 붙는 정렬 기준 추가 → T-073 (칸 위치 영속은 서버 T-058)