Commit Graph

9 Commits

Author SHA1 Message Date
깃 관리자 8aa804168f UI 캔버스 갱신 등급 분할 + UI 스프라이트 아틀라스(#1107 · PD 2026-11-10 「리소스·정보가 얼마나 자주 바뀌는지에 따라 캔버스를 나누어 최적화 · 드로우콜 최소화 구조」)
- 갱신 등급 3단(Static/Event/Frame · Runtime/UI/UiLayer): 아웃게임 화면마다 중첩 캔버스 · 스크롤 내용 · 재화 바 · 팝업 · 토스트 · 뽑기 결과 · 끌기 유령 분리 · UiPulse/UiPop 자동 Frame 분리
- 전투 HUD = 정적 판 루트 → Info → MinimapLive(Frame) · SkillGlow → Result · 월드맵 = 루트 → Content(스크롤) → 커서 · 팝업
- 매 프레임 갱신 코드 = 값이 같으면 대입 안 함 · UiPop 끝나면 정지
- 아틀라스 SOT Assets/Data/UI/ui_atlas.csv → Editor/UIAtlasBuilder(UI 테마 임포트 때 자동) → UI_Common 4096x2048 · UI_Content 2048x2048 · WorldMap_UI 1024x1024 · Sprite Atlas V2
- UISkin.WorldSprite = 아틀라스 자리(textureRect)로 자름
- 검증: UiLayerProbe(캡처 로그 layers 줄 + ui_layers.csv) · UILayerTests · 테스트 119/119 · 13화면 배치 합계 1124 → 439

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 01:05:47 +09:00
깃 관리자 896c5237c6 Fable 검수(나머지1) 결함 1~10 반영 — 결과 · 공용 팝업 · 거래(#1104)
- 결과: 결과 단계 HUD 전체 숨김(BattleHUD.HideOnResult · 제목 2중 제거) · 「다시」 = 군량 비용 칩(부족 = 회색) · 「첫 클리어」 글자 → 타일 「첫」 뱃지 · 레벨업 = 노란 글자 칩 + 위 화살표 · 패널 = 섹션 패널 층(프레임 #3F4262 + 필드 + 광택) · 높이 1180 → 1080
- 팝업: 제목 띠 색 통일(popup_band #1F2138) · 스테이지 팝업 띠 h110 + 왼쪽 스테이지 칩 · 본문 필드 위 126 · 출정 버튼 바닥 여백 52 · 군량 팝업 디버그 문구 삭제 · 「보기」 = btn_green(비율 통일)
- 행 판 통일: row_on_field = 흰 8 %(결과 · 팝업 · 거래 · 내정 전부 밝은 행)
- 거래: 「픽업」 = 배너 안 뱃지 하나(칩 = 「기간 2주」) · 배너 600 · 천장 176 · 확률 행 80 · 버튼 행 탭 바 위 24 고정 · 픽업 그림 = 아트 있는 영웅만 크게 + 이름 칩(「기」 자리 원 제거)
- 테스트 117/117 · console error 0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-09 18:19:06 +09:00
깃 관리자 ca8b4cc5e0 전투 결과 · 공용 팝업 · 거래 비주얼 개선 = Fable 제안서 §4-2~§4-4 구현(#1104 · PD 2026-11-09)
- 전투 결과: 별 받침 원 + 큰 별(Icon_Star_On/Off 한 벌) 0.15 s 튀김(UiPop) · 조건 행 3(체크/엑스) · 보상 타일(ItemFrame 5층 + 수량 칩 · 장비 = 등급 칸 · 상자) · 「다시」(같은 노드 재출전 · 군량 확인 · WorldMapScreen.RetryLast · 화면 탭은 이 버튼 위만 제외 = SlingshotInput.HoldResultTap) + 「확인」 Primary 노랑 · 리본 뒤 금빛(호흡)
- 군량 팝업: 필드 인셋 · 현재 군량 블록 · 교환 행 2(비용 → 군량 · 오늘 횟수 · Secondary 하늘/녹 · 다 쓰면 회색) · 닫기 = X 만
- 스테이지 팝업: 필드 인셋 · 적 구성 병종 원 ×n + 장수 칩 · 보상 타일 4(첫 클리어 뱃지) · 별 조건 행 3 · 출정 = 붉은 Primary + 군량 비용 · 소탕 = 녹 Secondary · 닫기 버튼 삭제(PopupFill · CostOf 훅)
- 거래(뽑기): 목록 바탕 · 서브탭 Round10 · 배너 아래 문양 띠 + 「픽업」 뱃지 · 천장 = 레벨형 게이지 + 노랑 배지 · 확률 = 섹션 패널 + 제목 띠 + 행 3(별 · 바 · %) · 1회 Secondary 하늘 + 보옥 비용 · 10연 Primary 노랑 + 「첫 무료」 꼬리 칩 · 각주 → ⓘ 팝업
- UiKit 공용 부품 ②: At · SkinBtn · BtnCost · SubTab/SetSubTab · Gauge/SetGauge · InfoChip · QtyChip · RewardTile · CondRow · SubTitle
- 테마 행 추가(ui_theme.csv): 버튼 btn_l_yellow·btn_l_red · 소제목 선 · 큰 별 · 뱃지 · 배너 문양 · 상자 색(구 TreasureScreen.ChestColor 상수 이관 준비) 등
- 테스트 117/117 · console error 0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-09 18:03:43 +09:00
깃 관리자 d73c606e46 UI 리뉴얼 A-2~A-4 화면 적용(PD #1100) — 팩 부품 + UI 테마(id 치환) · 화면 10종 · 인박스 ui kind
- 테마: SOT Assets/Data/UI/ui_theme.csv(색 57 · 스킨 32 · 아이콘 63 · 제목 폰트) → 메뉴 TKS/Import UI Theme → Resources/UI/UITheme.asset
  (Runtime/UI/UITheme · UISkin · Editor/UIThemeImporter · ProjectSetup 에서도 임포트) · 화면 코드는 id 로만 묻는다(스프라이트 경로 0)
- 신규 제작(B) 치환: Assets/UI/Samguk/**/<id>.png → 임포트 시 같은 id 스킨·아이콘 자동 치환(팩 보존 · 새 id = 아이콘 추가) ·
  Tools/apply_delivery.py ui kind(md5 → Samguk/<group> · gim_* → Resources/Gimmicks/Art · ui_delivered.csv)
- 공통: UiKit(카드 = BorderFrame_Round20 틴트 · 버튼 = Button01_s + 광택 · 원 · 진행 바 = Slider_Basic01 · 초상 틀 · 등급 칸 ItemFrame02 · 별 줄 · 병종 배지)
  · 재화 바(ResourceBar + cur_* 아이콘) · 하단 탭(선택 판 + PictoIcon) · 제목 띠 · 팝업(Popup Topber + 닫기 X) · 토스트
- 화면: 로비(키아트 04 배경 위쪽 ×1.22 · 출정·편성·연무장 아이콘) · 영웅(등급 칸 + 장비 아이콘 · 체크/알림 점 · 별 아이콘) · 편성 · 거래(배너 · 상자 아이콘) ·
  보물(상자 아이콘 · 포인트 배지) · 내정(보상 줄 · 도면·골드 아이콘) · 연무장 · 결과(리본 · 별) · 월드맵 스테이지 팝업만 팩(거점 kit 유지)
- 전투: HUD 칩 · 턴 띠 · 원형 스킬 버튼 + 쿨 라디얼 · 유닛 체력 바 · 기믹 내구 핍 = 팩 슬라이더(월드 9-slice 사본 · 가운데 2 px) · 조준선 색 유지
- 3:4(1536×2048): 본문 비율 축소(UiFitHeight · 1080×1920 = 그대로)
- 검증: 플레이모드 116/116(기존 115 + UIThemeTests 1) · 컴파일 0 · error 0 · 캡처 = DataImporter.CaptureUI(UICaptureDriver · 15장)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 23:20:57 +09:00
깃 관리자 5def2bb9b1 아웃게임 1차(PD #1093 세션 A) — 본영 로비 · 세이브 · 군량 · 영웅(레벨·승급 6칸·진화·스킬 표시) · 편성(전열 3/후열 2 · 프리셋 3) · 거래(뽑기·골드 장비 상점) · 스테이지 보상·별 3·소탕
- 데이터: 기획 tables/ 12장 → Assets/Data/OutGame/*.csv · 메뉴 TKS/Import OutGame Data(Editor/DataImporter) → Resources/OutGame 9 자산(HeroDb·GearDb·GachaConfig·EconomyConfig·RewardTable·LevelTable·PromotionTable·EvolveTable·SkillInfoDb) · 검증(행 수·필수 열·id 유일·hero↔skill↔gear·확률 합) 오류 시 자산 불변 · BalanceConfig.heroes[]/HeroDef 삭제 → HeroDb(기존 5인 id 유지) · economy.csv 키 17 + gacha.csv 키 2 추가(기획서 본문 값 · C45)
- 세이브: persistentDataPath/save.json · ver 1 · 즉시 저장 · 오프라인 군량 회복 · 일일 초기화 · 신규 유저 = 유비·관우·장비·조운·황충 Lv1 녹 ★=희귀도 · 골드 1000 · 보옥 300 · 군량 30 · 테스트·캡처 = 메모리 전용
- 화면(uGUI 와이어프레임 · img03·06·08·11): 시작 = 본영 로비(출정 → 월드맵 · 편성 · 연무장/보물/내정 준비 중 · 동맹 추후) · 재화 바(월드맵 포함 · 군량 타이머) · 하단 탭 5 · ◀/Esc 일관 · 영웅 목록·상세·상세정보·도감 · 편성(탭·드래그) · 뽑기(천장 n/80 · 확률 공개 · 첫 10연 무료 · 10연 ★★ 보장 · 카드 순차 공개) · 장비 상점(흰/녹 6종 일일 · sell×5 · 새로고침 보옥 20)
- 전투 연결: BattleManager.LineupProvider/Deployed(LineupEntry · §3-2 스탯 · 방어 배율 생성 뒤) · playerSpawnPoints = 전열 (−4/0/4, −12) · 후열 (−2/2, −14) · WorldMapScreen 훅(팝업 군량·보상·별 · 입장 군량 · 노드 별 star_on/off · 소탕 · ◀ 본영 · TopInset) · 결과 패널(별 3 조건 · 골드·경험·보옥·장비) · GameBootstrap/AutoPlayDriver 로비 시작
- B 세션 파일(ActionResolver·Combat·UnitView·BattleHUD·SlingshotInput·EnemyAI) 미변경
- 테스트 56/56(기존 41 유지 · 신규 OutGameTests 15) · console error 0 · 사본 GUI 캡처 11장(DataImporter.CaptureOutGame)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 21:11:10 +09:00
깃 관리자 05cf37a6b5 챕터 1~10 기획 확정판 월드맵 반영(PD #1091 ③) — 챕터맵 보강 세션 납품 worldmap 10장(QA PASS · md5 20/20) → Resources/ChapterMap/Maps·Data/ch01~ch10(파일 번호 = 기획 장 · 가안 맵 대체) · world.json 길·장소 갱신 · Tools/apply_delivery.py worldmap kind(md5 검증·복사·world.json 항목 교체 · 같은 맵 뒤 납품이 있으면 앞 것 .superseded.json · --kind 필터 · QA 「PASS(…)」 허용) · chapters.csv map = 1:1(3·7장 임시 맵 1 해소) · 노드 = Data/<맵>.json stages[].at(번호로 맞춤 · 없으면 slots_N → 길 균등) · 테스트 41/41(신규: 10장 노드 수·보스 = 5의 배수·지명·길 위·깃발 겹침 없음) · console error 0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 18:56:15 +09:00
깃 관리자 ce8d45de8f 스테이지 표 기획 회신 반영(#1086 작업 C 후속) — 9-9 하북 4장 배치(마연·장의 = 기병 · 초촉·장남 = 창병 · 엘리트 · 조조군 병사 아트 + 이름표 = generals.csv 새 art 열) · 원소·원술·형주·형주 반란군 병사 art → cc(D3 재사용 · 베리에이션 납품 시 교체) · 5-1 산적·5-2 원술군·세력 코드 lb·sj·jzr 확정 표기 · 무장 판별 = EnemySpawn.isGeneral(아트 이름 대신) · 임포트(무장 72 · 보스 33) · 테스트 40/40 · console error 0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 13:23:01 +09:00
깃 관리자 2d0fc4fab6 스테이지 데이터 145(챕터 1~10 · 기획서 #1086 §4) = CSV SOT + 임포터 + 월드맵 연결 — Assets/Data/Stages/{stages,chapters,generals,factions}.csv(utf-8-sig) · 메뉴 TKS/Import Stages(StageImporter · 형식 오류면 자산 미변경) → BalanceConfig.chapters·stages · 적 좌표 = formation 규칙(전위·중군·후군·장수 줄 · StageTable.Enemies) · 보스 isBoss = type boss 스테이지만 · 엘리트 = 배율 보정 · 아트 없는 무장·세력 = 도형 · 월드맵 = 챕터·노드 수·보스 노드를 스테이지 표에서(10·10·15·15·15·20·10·15·15·20) · 노드 자리 = anchors slots_N · 3·7장 = 맵 1 임시 · BalanceDefaults 구 4 스테이지 시드 삭제 · 테스트 31/31(신규 4: 145행·보스=5의 배수·병종/아트 id · 자산=CSV·배치가 전장 안·겹침 없음 · 도형 대체 · 월드맵 노드/해금) · console error 0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 12:17:19 +09:00
깃 관리자 d2dfa76aac 시작 화면 = 챕터 월드맵(스크롤 2160×3840 · 10장) → 스테이지 팝업(임시) → 전투 → 결과 탭 = 맵 복귀·다음 노드 열림 + 아군 뒷모습·황건적·동탁군 포즈 반영 (PD 2026-11-05)
- WorldMapScreen(신규): ScrollRect 맵 · 길 따라 깃발 노드(open/clear/lock · 보스) · 길 점 · 현재 위치 핀 · 챕터 띠 ◀▶ · 스테이지 팝업(적 구성·보스 · 출전/닫기) · 임시 진행도(메모리)
- 데이터 = Resources/ChapterMap/Data/world.json(원화 세션 chap_install.py 생성 · 맵 크기·실제 길·부품 크기/피벗/번호 자리·임시 스테이지 연결 = 챕터당 10노드 · 전투 = 기존 스테이지 0/1/2) · 지명판 = 끔(생성 그림과 위치 어긋남)
- GameBootstrap: StartOnWorldMap(기본 true) · BattleManager: ResultHandler · GoIdle · BattleHUD 결과 문구 · AutoPlayDriver: 월드맵·팝업 캡처 후 1-1 출전
- UnitArtImporter: ChapterMap/Maps(4096 · 압축) · ChapterMap/UI(import.json 피벗·9-slice·PPU 133.33)
- 유닛: 아군 5인 앞·뒤 × idle/ready/action(키아트 세션 · md5 30/30) · 황건적 5 = 인박스 20261105_0312_hgj(QA PASS · md5 15/15) · 동탁군 5(여포 포함 · 원화 세션 poses md5 15/15 · PD 지시로 직접 반영)
- 테스트 27/27(+ 월드맵 시작 · 팝업→전투→맵 복귀 · 맵/UI 리소스 · 포즈 세트·동작별 스프라이트 교체 · 앞뒤 클립 고정 자료 hgj_infantry → 아군 아트) · console error 0
- 남은 것(QA r2 B 2 · PD 결정): ch04 보스 초상 틀이 위 HUD 줄 안 · ch08 경로가 다리 없는 큰길을 피해 풀밭·강둑으로 우회

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 03:38:47 +09:00