Project_WL/AgentScripts/WL814d_PROBE.txt

183 lines
12 KiB
Plaintext
Raw Permalink Normal View History

# WL814d Probe 2026-09-11 00:47:52 (edit mode · Play 0 · 로그인 0)
playMode=False
현재 씬 = '' dirty(before)=False rootCount=0
── A. 에셋 · 계약 (814d SO · 814b SO · 811o SO)
[PASS] WLLookModeSettings.asset 로드(Resources/WL/WLLookModeSettings)
[PASS] enabled_ = 1
[PASS] 모드 4개 — 실측 4
| 모드 | 이름 | 리그 | SO구도 | cameraHeight | distance | distanceUp | orthoSize | pixelHeight | envLookOn |
|---|---|---|---|---|---|---|---|---|---|
| 0 | 기본 | 원근 | O | 76 | 3 | 2.4 | 3.8 | 480 | 0 |
| 1 | 도트A | 직교 | - | 76 | 3 | 2.4 | 3.4 | 480 | 1 |
| 2 | 도트B(넓게) | 직교 | - | 76 | 3 | 2.4 | 4.6 | 480 | 1 |
| 3 | 도트C(굵게) | 직교 | - | 76 | 3 | 2.4 | 4.6 | 360 | 1 |
[PASS] 0번 = 원근 + 811o SO 구도 그대로(리그 해제)
[PASS] 1~3번 = 도트(직교 리그)
[PASS] 순환 0→1→2→3→0 (Wrap(4)=0 Wrap(-1)=3)
814b WLPixelCameraSettings: enabled=False orthoSize=3.8 pixelHeight=480 prefab=True
[PASS] 🔴 814b SO enabled = 0(F-23) — 강제 조립 API 가 필요한 이유(실측)
[PASS] 814b 리그 프리팹 배선됨(URP 패키지 해제 확인)
811o WLCameraFramingSettings: enabled=True framingEnabled=True h=76 d=3 up=2.4 poll=0.25s
[PASS] 811o 구도 오버라이드가 켜져 있다(런타임 프리셋의 전제)
── B. 임시 씬 — 원본 Main Camera(RealCamera 포함) + UICamera(스택 오버레이)
[PASS] 원본 카메라 프리팹 로드 Assets/ResWork/Prefabs/Ingame/Main Camera.prefab
[PASS] Camera + RealCamera 보유
[PASS] tag = MainCamera
[PASS] Camera.main 이 이 카메라로 해석된다(리그 강제 조립의 전제) — 실측 __WL814d_MainCamera
프리팹 arr_cCamData[0] h=65 min=3 max=3 up=2 · [1](보스 프리셋) h=78
원본 카메라 orthographic=False fov=60 cullingMask=95 depth=5
[PASS] 원본 스택 = [UICamera] (NewGameUI.cs:38 재현)
[PASS] InGameInfo.m_GameMode 리플렉션(프로브 전용 · 게임 코드 0)
[PASS] 인게임(Stage) 판정 — LookModeHub.InLobby=False
── C. HUD 버튼 — NewGameUI 프리팹(저장 0) · Safe Area · 좌표 표
[PASS] LoadPrefabContents(Assets/Res_Addr/MainUI/NewGameUI.prefab)
[PASS] IngameUIs/WL_HUD 경로 실측
[PASS] WL_HUD 가 SafeAreaFitter 아래 = Safe Area 안 (802b/813y 실측 재확인)
Bind: 연결 IngameUIs/WL_HUD · pos(-42.67, -835.56) size(355.56, 248.89) 버튼 200×64px unitsPerPx=1.7778 · sortingOrder=10
[PASS] WL_LookToggle 노드 생성(HideFlags.DontSave)
[PASS] 전용 Canvas sortingOrder=10 — 813q2 결과창 40 · 813z 부활 60 보다 아래
조립 직후 overrideSorting=False (IngameUIs 활성=False)
[PASS] IngameUIs 활성 → overrideSorting=True sortingOrder=10(중첩 캔버스로 인정 · Tick 이 다시 건다)
활성 첫 프레임 재배치: [LookToggleUi] bound=True visible=True sortingOrder=10 · 카메라 "카메라: 기본" 배경 "배경: OFF" · 클릭 0/0 라벨쓰기 2 · rect0 (x:856.00, y:470.00, width:200.00, height:64.00) rect1 (x:856.00, y:546.00, width:200.00, height:64.00) · 노드 pos(-42.67, -835.56) size(355.56, 248.89) SafeArea=True · showButtons=True top=470px right=24px
Layout: pos(-42.67, -835.56) size(355.56, 248.89) 버튼 200×64px unitsPerPx=1.7778
[LookToggleUi] bound=True visible=True sortingOrder=10 · 카메라 "카메라: 기본" 배경 "배경: OFF" · 클릭 0/0 라벨쓰기 2 · rect0 (x:856.00, y:470.00, width:200.00, height:64.00) rect1 (x:856.00, y:546.00, width:200.00, height:64.00) · 노드 pos(-42.67, -835.56) size(355.56, 248.89) SafeArea=True · showButtons=True top=470px right=24px
루트 캔버스 = NewGameUI scaler=ScaleWithScreenSize ref=(1920.00, 1080.00) match=Expand → unitsPerPx=1.7778
[PASS] unitsPerPx = 1.7778 (813q·802b 실측과 같은 계수) — 실측 1.7778
[PASS] 노드 폭 = 200 px × 1.7778 = 355.56 유닛 — 실측 355.56
[PASS] WL_LookToggle 노드 탐색
[PASS] 버튼 배경 2개 전부 raycastTarget = 터치 통과 0 — 실측 2/2
[PASS] 라벨은 raycastTarget 0(버튼이 먹는다) — 실측 0
[PASS] 노드 hideFlags = DontSave(프리팹에 굽지 않는다)
| 요소 | 소유 | 상단 y(px) | 하단 y(px) | 좌 x(px) | 우 x(px) |
|---|---|---|---|---|---|
| 상단 재화 바 | 프리팹(#729) | 130 | 176 | (프리팹) | (프리팹) |
| 보스 HP 바 | 813c3 | 190 | 256 | 100 | 980 |
| 런 HUD | 813q | 272 | 394 | 260 | 820 |
| 보스 배너(1.2 s) | 813tj | 300 | 450 | 110 | 970 |
| **[카메라] 버튼** | **814d** | **470** | **534** | **856** | **1056** |
| **[배경] 버튼** | **814d** | **546** | **610** | **856** | **1056** |
[PASS] 버튼 크기 ≥ 96×48 px — 실측 200×64
[PASS] 보스 HP 바(≤256)와 겹침 0 · 여유 214 px
[PASS] 런 HUD(≤394)와 겹침 0 · 여유 76 px
[PASS] 보스 배너(≤450)와 겹침 0 · 여유 20 px
[PASS] 런 HUD 폭(우 820)보다 오른쪽 · 가로 여유 36 px
[PASS] 두 버튼이 화면 안 — 아래끝 610 px
결과창(813q2 sortingOrder 40) · 부활 팝업(813z 60) 은 이 버튼(10)보다 위 = 팝업이 뜨면 버튼이 가려진다(겹침 대신 덮임).
[참고] NewGameUI 캔버스 직속 노드(이름 · active):
- New Image (active=False children=0)
- Camera (active=True children=0)
- Floating Joystick (active=True children=1)
- CamRot (active=True children=0)
- WL_SafeArea_Back (active=True children=2)
- IngameUIs (active=False children=7)
- FarmUIs (active=False children=3)
- WL_SafeArea_Front (active=True children=3)
- TestMapUIMgr (active=True children=6)
── D. 모드 0→1→2→3→0 — 리그 · arr_cCamData · 원본 카메라 · 버튼 라벨
| 모드 | 이름 | 리그조립 | 원본 ortho | orthoSize | RT | arr[0] h/min/max/up | 라이브 h/max/up | 내림각 | 스택 | 카메라 라벨 | 배경 라벨 |
|---|---|---|---|---|---|---|---|---|---|---|---|
[PASS] step 0 → 모드 0 (실측 0)
| 0 | 기본 | - | False | 5 | — | 76/3/3/2.4 | 76/3/2.4 | 36.8° | 1 | 카메라: 기본 | 배경: OFF |
[PASS] 모드 0 리그 조립 = False (실측 False)
[PASS] 모드 0 원본 카메라 orthographic = False (실측 False)
[PASS] 모드 0 런타임 프리셋 해제 = 811o SO 값으로 복귀
[PASS] 모드 0 구도 = 811o SO(h 76 · d 3) — 실측 76/3
[PASS] 모드 0 URP 스택 = [UICamera] 1개(리그 해제 후 원복) — 실측 1
[PASS] 모드 0 카메라 라벨 = "카메라: 기본" (실측 "카메라: 기본")
[PASS] 보스 프리셋 arr_cCamData[1] 무변경 — h 78(시작 78)
[PASS] step 1 → 모드 1 (실측 1)
| 1 | 도트A | O | True | 3.4 | 640×480 | 76/3/3/2.4 | 76/3/2.4 | 36.8° | 2 | 카메라: 도트A | 배경: ON |
[PASS] 모드 1 리그 조립 = True (실측 True)
[PASS] 모드 1 원본 카메라 orthographic = True (실측 True)
[PASS] 모드 1 orthographicSize = 3.4 (실측 3.4)
[PASS] 모드 1 RT 세로 = pixelHeight 480 (실측 480)
[PASS] 모드 1 구도 = h 76 · d 3 · up 2.4 (실측 76/3/2.4)
[PASS] 모드 1 URP 스택 = [ViewCamera, UICamera] 2개(UI 소실 0) — 실측 2
[PASS] 모드 1 UICamera 가 스택 맨 뒤(UI 가 맨 위에 그려진다)
[PASS] 모드 1 카메라 라벨 = "카메라: 도트A" (실측 "카메라: 도트A")
[PASS] 보스 프리셋 arr_cCamData[1] 무변경 — h 78(시작 78)
[PASS] step 2 → 모드 2 (실측 2)
| 2 | 도트B(넓게) | O | True | 4.6 | 640×480 | 76/3/3/2.4 | 76/3/2.4 | 36.8° | 2 | 카메라: 도트B(넓게) | 배경: ON |
[PASS] 모드 2 리그 조립 = True (실측 True)
[PASS] 모드 2 원본 카메라 orthographic = True (실측 True)
[PASS] 모드 2 orthographicSize = 4.6 (실측 4.6)
[PASS] 모드 2 RT 세로 = pixelHeight 480 (실측 480)
[PASS] 모드 2 구도 = h 76 · d 3 · up 2.4 (실측 76/3/2.4)
[PASS] 모드 2 URP 스택 = [ViewCamera, UICamera] 2개(UI 소실 0) — 실측 2
[PASS] 모드 2 UICamera 가 스택 맨 뒤(UI 가 맨 위에 그려진다)
[PASS] 모드 2 카메라 라벨 = "카메라: 도트B(넓게)" (실측 "카메라: 도트B(넓게)")
[PASS] 보스 프리셋 arr_cCamData[1] 무변경 — h 78(시작 78)
[PASS] step 3 → 모드 3 (실측 3)
| 3 | 도트C(굵게) | O | True | 4.6 | 480×360 | 76/3/3/2.4 | 76/3/2.4 | 36.8° | 2 | 카메라: 도트C(굵게) | 배경: ON |
[PASS] 모드 3 리그 조립 = True (실측 True)
[PASS] 모드 3 원본 카메라 orthographic = True (실측 True)
[PASS] 모드 3 orthographicSize = 4.6 (실측 4.6)
[PASS] 모드 3 RT 세로 = pixelHeight 360 (실측 360)
[PASS] 모드 3 구도 = h 76 · d 3 · up 2.4 (실측 76/3/2.4)
[PASS] 모드 3 URP 스택 = [ViewCamera, UICamera] 2개(UI 소실 0) — 실측 2
[PASS] 모드 3 UICamera 가 스택 맨 뒤(UI 가 맨 위에 그려진다)
[PASS] 모드 3 카메라 라벨 = "카메라: 도트C(굵게)" (실측 "카메라: 도트C(굵게)")
[PASS] 보스 프리셋 arr_cCamData[1] 무변경 — h 78(시작 78)
[PASS] step 4 → 모드 0 (실측 0)
| 0 | 기본 | - | False | 5 | — | 76/3/3/2.4 | 76/3/2.4 | 36.8° | 1 | 카메라: 기본 | 배경: OFF |
[PASS] 모드 0 리그 조립 = False (실측 False)
[PASS] 모드 0 원본 카메라 orthographic = False (실측 False)
[PASS] 모드 0 런타임 프리셋 해제 = 811o SO 값으로 복귀
[PASS] 모드 0 구도 = 811o SO(h 76 · d 3) — 실측 76/3
[PASS] 모드 0 URP 스택 = [UICamera] 1개(리그 해제 후 원복) — 실측 1
[PASS] 모드 0 카메라 라벨 = "카메라: 기본" (실측 "카메라: 기본")
[PASS] 보스 프리셋 arr_cCamData[1] 무변경 — h 78(시작 78)
── D-2. 배경 룩 버튼(814c 연동 훅) — 플래그 + 이벤트만
[PASS] [배경] 탭 → 플래그 뒤집힘 False → True
[PASS] EnvLookChanged 1회 발행(814c 구독 지점) — 실측 1회 값=True
[PASS] 배경 라벨 = "배경: ON"
[PASS] 다시 탭 → 원래대로 · 이벤트 2회
클릭 카운트: 카메라 4 · 배경 2 · 라벨 쓰기 10회
[PASS] envFollowsCameraMode 1 → 도트 모드에서 배경 룩 자동 ON (실측 True · 이벤트 1회)
[PASS] 기본 모드로 돌아오면 배경 룩 자동 OFF (실측 False)
── E. 세션 유지 — 로비 강등 · 인게임 복원 · 맵 재진입 재조립
[PASS] 인게임(Stage) 판정
[PASS] 인게임 모드 2 적용 — applied=2 리그=True h=76 ortho=4.6
[PASS] 로비 → 카메라 기본 복귀(적용 0 · 리그 해제) · 고른 모드 2 유지 — 실측 mode=2 applied=0 리그=False ortho=False h=76
[PASS] 인게임 재진입 → 모드 2 자동 복원 — ortho=4.6 h=76 (로비강등 1회)
[PASS] 맵 이탈 → 리그 해제되지만 오버라이드 플래그는 유지(다음 진입에서 같은 값으로 재조립) — 실측 True
[PASS] 맵 재진입 → 같은 값으로 재조립 ortho=4.6
[LookMode] 고른모드=2(도트B(넓게)) 적용모드=2 배경룩=True · 리그조립=True 리그오버라이드=True · 구도적용=True 런타임프리셋=True(h 76 · d 3 · up 2.4) · 적용 9회 · 모드변경 7 · 배경변경 7 · 로비강등 1
── F. GC — 전환 외 프레임당 할당 0
[PASS] 허브 Tick + UI Tick ×200 → Δ0 B (gen0 242→242)
[PASS] 라벨 쓰기 0회(값이 그대로면 안 쓴다) — 실측 0
[PASS] 적용 0회(모드가 그대로면 두 기능을 건드리지 않는다) — 실측 0
[PASS] 대조군 16 MB 할당 감지 Δ16781312 B = 계기 감도 확인
── G. C8 — WLLookModeSettings 를 끄면 814b/811o 가 원래대로
[PASS] 끄기 전 = 도트 모드 · 두 오버라이드 on
[PASS] WLLookModeSettings.Enabled = false
[PASS] 814b 리그 오버라이드 0 · 리그 해제 = SO(enabled 0) 원래 동작
[PASS] 811o 런타임 프리셋 0 = SO 값 경로 그대로
[PASS] arr_cCamData[0] = 811o SO 값 h 76 / d 3 / up 2.4 — 실측 76/3/2.4
[PASS] 원본 카메라 원근 복귀 — orthographic=False
[PASS] 버튼 숨김 — visible=False
[PASS] 적용 모드 0 고정 — 실측 0
[PASS] showButtons = 0 → 버튼만 숨김(모드 전환은 그대로) — visible=False
[PASS] 되돌리면 다시 보인다
── Z. 정리 — 오버라이드 해제 · 노드 파괴 · 프리팹 저장 0
리그 조립=False 오버라이드=False · 구도 런타임프리셋=False 적용=False
teardown 완료
남은 카메라 0개 · InGameInfo.Ins=False
NewGameUI.prefab 저장 0(UnloadPrefabContents(false) 기본) · 에셋 쓰기 0
RESULT PASS (pass=106 fail=0)
씬 정리 후: dirty=False rootCount=0 (저장 0)