docs(BT12-Dev): InfiniteHorizontalBackground 컴포넌트 (대화로그 엔트리 8·PD 지적 정정)

- PD 지적: Tiled size 단순 키움 영역 비효율·리소스 재활용 영역 의도
- 본 PM 자성 + 정정 — InfiniteHorizontalBackground 컴포넌트 신규
- sprite 1개 + 자식 사본 2개·LateUpdate 영역 Camera 따라 reposition
- EerieVillage `a6e168e` push 정합
- MCP 검증 — bgPos 0 → 188.04·자식 사본 영역 영역 영역 영역 정합
This commit is contained in:
깃 관리자 2026-05-10 16:04:37 +09:00
parent dcf43549a1
commit a76ae6b40a
1 changed files with 65 additions and 0 deletions

View File

@ -618,3 +618,68 @@ execute_code 영역 — `SerializedObject.FindProperty("Icon").objectReferenceVa
### 후속 ### 후속
- PD 영역 직접 Play 검증 — Editor Refresh + Play → 카드 영역 아이콘 영역 영역 영역 + 배경 영역 Player 이동 시 자연 스크롤·반복 - PD 영역 직접 Play 검증 — Editor Refresh + Play → 카드 영역 아이콘 영역 영역 영역 + 배경 영역 Player 이동 시 자연 스크롤·반복
---
## 엔트리 8 (신설). BT12-Dev 무한 배경 InfiniteHorizontalBackground 컴포넌트 (PD 지적 정정·sprite 재활용)
**시각**: 2026-05-10 신 세션
**주체**: 총괄PM 직접 (MCP 자율·~10K)
**대상**: 배경 영역 효율 영역 정정
**유형**: PD 지적 → 본 PM 자성·정정·MCP 자율 검증
### PD 직접 발화
> "네가 한 방식은 배경 이미지 크기를 단순히 키운거라서 너무 비효율적이지 않아? 내가 말한 건 리소스를 재활용할 수 있는 기능을 구현하라는 뜻이었어."
### 본 PM 자성
직전 Tiled DrawMode size (500, 7) 영역 — 단순 영역 영역 영역. 메모리·렌더 영역 비효율 영역 영역 영역. PD 의도 — **sprite 재활용 reposition 패턴** 영역 (Camera 영역 따라가 sprite 영역 영역 영역 영역).
### 정정 — InfiniteHorizontalBackground 컴포넌트 신규
`Assets/Scripts/Background/InfiniteHorizontalBackground.cs`
**동작**:
- **Start** — sprite 가로 폭 측정 + 자식 사본 2개 (Left·Right) 영역 영역 영역 영역
- 화면 영역 영역 영역 3 sprite (root + Left + Right) 영역 충분 (sprite world width > Camera width)
- **LateUpdate** — Camera 영역 영역 영역 영역 sprite 폭 영역 영역 영역 → root 영역 정수 배수 reposition
- 자식 사본 영역 영역 영역 영역 따라가 영역 영역 영역 영역 영역 영역
- **효율**:
- sprite 1개 (Resources 1회 영역·Texture 메모리 재사용)
- GameObject 3개 (root + 2 사본)·Tiled 500 unit 영역 비교 영역 영역 영역 영역
### Background_BgImage1 정정
| 항목 | Before (Tiled 영역) | After (재활용 영역) |
|------|---------|---------|
| DrawMode | Tiled (size 500, 7) | **Simple** (sprite default·재활용 패턴 정합) |
| Scale | (1, 1, 1) | (1.77, 1.77, 1) — Camera height fit |
| Position | (0, 0.5, 10) | (0, 0.5, 10) (영역 영역) |
| Component | — | **InfiniteHorizontalBackground** 부착 |
### MCP Play 검증
`SendMessage("LateUpdate")` 직접 호출 영역 reposition 발화 영역 영역:
| 시점 | bgPos | 자식 (Left·Right) | 정합 |
|------|------|-------|------|
| Start (Camera 0) | (0, 0.5, 10) | (-94.02·+94.02) | ✅ 3 sprite 영역 |
| Camera (150) → SendMessage | **(188.04, 0.5, 10)** | (94.02·282.07) | ✅ Camera 영역 영역 sprite 3 영역 영역 |
→ Player 영역 영역 영역 → Cinemachine catchup → Camera follow → InfiniteHorizontalBackground.LateUpdate 영역 자동 reposition.
### EerieVillage commit `a6e168e`
- 3 파일 (InfiniteHorizontalBackground.cs + meta + Scene·131/-20)
- main push 정합 (`4855811..a6e168e`)
### 관련 규칙·자산
- **C2** 근본 해결 (Tiled size 단순 키움 영역 X·sprite 재활용 reposition 패턴)
- **C5·C44** 정직성·팩트 우선 (PD 지적 자성·MCP 직접 검증)
- **C44** 팩트 우선 (LateUpdate SendMessage 영역 reposition 발화 직접 검증)
### 후속
- PD 영역 직접 Play 검증 — Player 좌·우 이동 → 배경 영역 자연 스크롤·sprite 재활용 영역 영역 영역