229 lines
8.8 KiB
Markdown
229 lines
8.8 KiB
Markdown
|
|
# BT5-Dev 세션 종결 인수인계서 (2026-05-08)
|
||
|
|
|
||
|
|
> **C40-2-1 표준 12 섹션** + **C40-2-2 다음 세션 첫 프롬프트 템플릿**
|
||
|
|
> **세션 영역**: BT5-Dev 발판 시스템 (BT63~BT75) + 몬스터 시스템 (BT76~BT109)
|
||
|
|
> **종결 사유**: PD 컨텍스트 한도 — 빠짐 없는 세션 공유 의무
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §1. 집행 요약
|
||
|
|
|
||
|
|
본 세션 (2026-05-08) 핵심 결과:
|
||
|
|
|
||
|
|
1. **발판 시스템 영구 마무리 (BT63~BT75)**: Drop-Through 패턴 + R2 (AutoForeground 분리) + Down+Jump + 가장자리 jitter 차단 + 시행착오 정리
|
||
|
|
2. **몬스터 sprite 교체 (BT76~BT79)**: M001 늑대 4 모션 (Idle·Run·Hurt·Death) + flipX 정합
|
||
|
|
3. **몬스터 자동 patrol (BT80~BT109)**: 23회+ 가설 누적 부정확 자인 후 PD 근본 진단 (Tilemap cell 기반 측정) 채택 영역 도달
|
||
|
|
4. **EnemyDeath 강화 (BT104/BT105)**: 제자리 사망 (body.simulated=false) + death 애니메이션 + 1초 Destroy
|
||
|
|
|
||
|
|
세션 종결 시점 EerieVillage `3dfc466` (BT109).
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §2. 완료 아카이브
|
||
|
|
|
||
|
|
본 세션 완료 영역 (PD 명시 정합):
|
||
|
|
- 발판 시스템 영구 채택
|
||
|
|
- 몬스터 sprite 교체 영구 채택
|
||
|
|
- 자동 patrol·낭떠러지 차단·밟기 처치 영역 (PD "일부 제외 정합")
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §3. 활성 PD 지시
|
||
|
|
|
||
|
|
| BT | 상태 | 영역 |
|
||
|
|
|----|------|------|
|
||
|
|
| **BT5-Dev** | **진행중** | 발판·몬스터 영역 PD 정합. 좁은 영역 Enemy 잔여 |
|
||
|
|
| BT12-Dev | 보류 | 본 세션 영역 X |
|
||
|
|
| BT7-Plan | 진행중 | 본 세션 영역 X |
|
||
|
|
| BT7-Dev | 진행중 | 본 세션 영역 X |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §4. 원격 반영 상태
|
||
|
|
|
||
|
|
| 영역 | 최신 commit |
|
||
|
|
|------|-----|
|
||
|
|
| **BurningTimes** origin/main | 본 세션 종결 commit (대화로그·인수인계서 push 후) |
|
||
|
|
| **EerieVillage** origin/main | `3dfc466` (BT109 footPos cell 영역 정정) |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §5. Inbox 잔류
|
||
|
|
|
||
|
|
PM 미처리 통신 0건.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §6. 후속 안건 (다음 세션 영역)
|
||
|
|
|
||
|
|
### 6-A. BT5-Dev 좁은 영역 Enemy 잔여 (PD 재요청 시)
|
||
|
|
|
||
|
|
PD 보고 (BT109 후): "몬스터들 중 일부(이동 가능 영역이 좁은 경우)를 제외하면 내가 원하는대로 움직이고 있어"
|
||
|
|
|
||
|
|
= 좁은 영역 (시작 위치 ↔ 절벽 거리 매우 작음) Enemy 영역 패턴 부정합. 추후 PD 재요청 시 본 PM 후속.
|
||
|
|
|
||
|
|
### 6-B. 활성 PD 지시 3건 진행
|
||
|
|
|
||
|
|
- BT12-Dev (보류·차단 블로커 4종)
|
||
|
|
- BT7-Plan (카드 시스템 9개 문서 순차 개정)
|
||
|
|
- BT7-Dev (VS 순수형 자동 발동 Phase 1)
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §7. commit 인덱스 (본 세션)
|
||
|
|
|
||
|
|
### EerieVillage (BT76~BT109·34 commits)
|
||
|
|
```
|
||
|
|
3dfc466 BT109 footPos cell 정정·BT104 재배치 폐기
|
||
|
|
5dbde11 BT108 Debug.Log 진단
|
||
|
|
1137583 BT107 Tilemap cell 기반 측정 (PD 근본 진단)
|
||
|
|
589f6ad BT106 y 영역 영구 고정 (폐기)
|
||
|
|
70d5bc4 BT105 제자리 사망·margin 2.0m
|
||
|
|
517e9c5 BT104 EnemyDeath 강화·재배치
|
||
|
|
64d30a1 BT103 정확 측정
|
||
|
|
725c710 BT102 투명벽 폐기·y 텔레포트
|
||
|
|
0aead1e BT101 PD FG TilemapCollider 제거·인접 검사 PD FG X
|
||
|
|
ad7cb55 BT100 투명벽 size·PD FG 자체 검사 X
|
||
|
|
63cecf0 BT99 EnemyWall Layer 18·투명벽 자동 생성
|
||
|
|
b3cbbdb BT98 R1 방어 영역
|
||
|
|
e701829 BT97 Start 시점 측정 (AfterSceneLoad 후)
|
||
|
|
53e6a59 BT96 transform+body 동시 push
|
||
|
|
32012aa BT95 PatrolPath path 12건 제거·velocity 즉시
|
||
|
|
e453d1d BT94 phase cooldown 0.5초·시작 시 측정
|
||
|
|
585eca1 BT93 transform push 폐기·velocity.x 0
|
||
|
|
7b48475 BT92 stuckTimer 0.3·cliff 1.0·safe push
|
||
|
|
c7943b1 BT91 절벽·벽 즉시·waitTimer arrive만
|
||
|
|
ec05dc0 BT90 수평 Raycast 폐기·stuckTimer 50ms
|
||
|
|
a5b8753 BT89 즉시 벽 검출·1~3초 대기
|
||
|
|
eeb7ded BT88 phase+2 시작 위치 복귀 폐기
|
||
|
|
050b00e BT87 즉시 전환·순찰 거리 절반
|
||
|
|
8baa3a6 BT86 속도 2배·미세 밀림·절벽 즉시
|
||
|
|
007b4dd BT85 Enemy y+0.3·수평 Raycast 폐기
|
||
|
|
aad1b4e BT84 수평 Raycast 시작 외부
|
||
|
|
4603fdf BT83 수평 벽 검출 추가
|
||
|
|
4d83bbc BT82 PD FG TilemapCollider 부착 (BT101에서 폐기)
|
||
|
|
cbde93a BT81 벽 정지·낭떠러지
|
||
|
|
3591bd2 BT80 y+0.5·자동 patrol·절벽 검출
|
||
|
|
8df09a7 BT79 Enemy flipX 정합
|
||
|
|
aa0b188 BT78 M001 sprite fileID 정정
|
||
|
|
a11a52a BT77 .anim sprite reference 매핑
|
||
|
|
020a220 BT76 Enemy.prefab Sprite M001
|
||
|
|
2ebacf6 BT75 발판 시스템 영구 마무리
|
||
|
|
```
|
||
|
|
|
||
|
|
### BurningTimes (본 세션 commit — 후속)
|
||
|
|
- 대화로그 엔트리 2 (BT76~BT109)
|
||
|
|
- 본 인수인계서
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §8. 주요 파일 경로
|
||
|
|
|
||
|
|
### Unity 외부 영역 (E:/EerieVillage)
|
||
|
|
|
||
|
|
| 파일 | 본 세션 변경 |
|
||
|
|
|------|------|
|
||
|
|
| `Assets/Scripts/Mechanics/EnemyController.cs` | 자동 patrol 4-phase·Tilemap cell 측정·TriggerReverse·waitTimer·BT102 텔레포트 |
|
||
|
|
| `Assets/Scripts/Mechanics/AnimationController.cs` | BT79 flipX 정합 |
|
||
|
|
| `Assets/Scripts/Mechanics/GameOptimizer.cs` | PD FG 시각만·AutoForeground 신규·자동 분류·CliffWalls 정리 |
|
||
|
|
| `Assets/Scripts/Gameplay/EnemyDeath.cs` | enabled=false·body.simulated=false·death 애니메이션·1초 Destroy |
|
||
|
|
| `Assets/Prefabs/Enemy.prefab` | M001 sprite·y 1.832·maxSpeed 3.5 |
|
||
|
|
| `Assets/Scenes/Ingame.unity` | Enemy 인스턴스 16건 y+0.8·path 12건 제거 |
|
||
|
|
| `Assets/Character/Animations/Enemy*.anim` | M001 sprite reference (4종 모션) |
|
||
|
|
| `ProjectSettings/TagManager.asset` | Layer 18 EnemyWall |
|
||
|
|
|
||
|
|
### BurningTimes 영역
|
||
|
|
|
||
|
|
| 파일 | 본 세션 |
|
||
|
|
|------|------|
|
||
|
|
| `공유/대화로그/EerieVillage/2026-05-08.md` | 엔트리 1 (BT63~BT75) + 엔트리 2 (BT76~BT109) |
|
||
|
|
| `공유/조직공지/2026-05-08_BT5-Dev_세션종결인수인계.md` | 본 인수인계서 |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §9. 세션 노하우 (다음 세션 영역 의무)
|
||
|
|
|
||
|
|
### 9-A. PD 근본 진단 우선
|
||
|
|
|
||
|
|
본 세션 23회+ 가설 누적 부정확 자인 영역. PD가 "절벽 체크 로직 잘못 = 근본 원인" 명시 시점 = BT107 Tilemap cell 기반 측정 재설계 채택 영역 도달. PD 명시 = 본 PM 가설보다 **항상 우선**.
|
||
|
|
|
||
|
|
### 9-B. Tilemap cell 기반 측정 (Raycast 영역 부정확)
|
||
|
|
|
||
|
|
Raycast 영역 = sprite·collider 영역에 따라 부정확 가능. **Tilemap.WorldToCell + HasTile 영역 = data 직접 사용** = 정확.
|
||
|
|
|
||
|
|
### 9-C. KinematicObject body.position vs transform.position
|
||
|
|
|
||
|
|
`transform.position` 직접 set 영역 ≠ `body.position` 영역. **transform + body 동시 set 의무** (KinematicObject 영역 정합).
|
||
|
|
|
||
|
|
### 9-D. velocity.x 직접 set은 1 frame만 영향
|
||
|
|
|
||
|
|
KinematicObject.FixedUpdate 영역 = `velocity.x = targetVelocity.x` 덮어씀. 즉시 효과 의무 시 = `control.move.x` 영역과 동시 set.
|
||
|
|
|
||
|
|
### 9-E. body.simulated = false (제자리 사망)
|
||
|
|
|
||
|
|
Rigidbody2D simulated=false 영역 = 물리 미참여·gravity X·충돌 X. 죽은 Enemy 영역 떨어짐 차단 정합.
|
||
|
|
|
||
|
|
### 9-F. footPos cell 영역 (발 vs 발판)
|
||
|
|
|
||
|
|
Capsule 발 영역 = bounds.min.y. 발 영역 자체 cell ≠ 발판 cell. **footPos.y = bounds.min.y - 0.5f** = 발판 cell 영역 정확.
|
||
|
|
|
||
|
|
### 9-G. AutoForeground vs PD Foreground 영역 분리
|
||
|
|
|
||
|
|
R2 영역 = 자동 분류 결과 = 별도 GameObject (AutoForeground·Grid 자식). PD가 직접 그린 시각만 Foreground 영역 보존. 시각 의도 ↔ 충돌 영역 분리.
|
||
|
|
|
||
|
|
### 9-H. Awake vs Start vs AfterSceneLoad
|
||
|
|
|
||
|
|
`RuntimeInitializeOnLoadMethod(AfterSceneLoad)` = Awake 후·Start 전. AutoForeground Tile data 활성 후 측정 의무 = **Start 시점**.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §10. 다음 세션 첫 점검 항목
|
||
|
|
|
||
|
|
1. **EerieVillage origin/main 정합 검증** — `3dfc466` (BT109)
|
||
|
|
2. **PD 시각 검증 결과 영역** — 좁은 영역 Enemy 잔여 패턴
|
||
|
|
3. **Editor.log `[Enemy@N]` direct read** — Start 시점 측정 결과 (BT108 Debug.Log)
|
||
|
|
4. **활성 PD 지시 4건 진행 상태**
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §11. 다음 세션 첫 프롬프트 템플릿 (PD 복사용)
|
||
|
|
|
||
|
|
```
|
||
|
|
[권고 1 — BT5-Dev 좁은 영역 Enemy 잔여]
|
||
|
|
"BT5-Dev 좁은 영역 Enemy 잔여 영역 진행. 본 PM이 Editor.log [Enemy@N] direct read해서 측정 결과 진단 + 정정."
|
||
|
|
|
||
|
|
[권고 2 — 활성 PD 지시 진행]
|
||
|
|
"#BT7-Plan 카드 시스템 9개 문서 순차 개정 착수." 또는
|
||
|
|
"#BT7-Dev VS 순수형 자동 발동 Phase 1 진행." 또는
|
||
|
|
"#BT12-Dev 스킬 시스템 설계 영역 차단 블로커 해소."
|
||
|
|
|
||
|
|
[현황 요약]
|
||
|
|
- BT5-Dev 발판·몬스터 영역 PD 정합 (좁은 영역 Enemy 잔여)
|
||
|
|
- EerieVillage 영역 commit `3dfc466` (BT109 footPos cell 정정)
|
||
|
|
- 본 PM 23회+ 가설 누적 자인 후 BT107 PD 근본 진단 채택 영역 도달
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## §12. 종결 선언
|
||
|
|
|
||
|
|
본 세션 종결 시점:
|
||
|
|
- BT5-Dev 발판 시스템 영구 마무리 (BT63~BT75)
|
||
|
|
- BT5-Dev 몬스터 시스템 거의 완료 (BT76~BT109·좁은 영역 잔여)
|
||
|
|
- 본 PM 23회+ 가설 누적 자인 영역
|
||
|
|
- PD 근본 진단 (Tilemap cell 기반 측정) 채택 영역 도달
|
||
|
|
|
||
|
|
다음 세션 진입 권고:
|
||
|
|
1. 모든 Claude 인스턴스 종료
|
||
|
|
2. 바탕화면 `BurningTimes Claude` 바로가기 + 새 대화
|
||
|
|
3. main 워크트리 (`E:\BurningTimes\`) 진입 확증
|
||
|
|
4. §11 첫 프롬프트 템플릿 또는 PD 자유 결정
|
||
|
|
|
||
|
|
본 세션 종결.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**작성**: 총괄PM (2026-05-08)
|
||
|
|
**관련 규칙**: C40-2-1 인수인계서 12 섹션·C40-2-2 첫 프롬프트 템플릿
|
||
|
|
**근거**: PD 직접 지시 (2026-05-08) "남은 컨텍스트가 얼마 없으니 이 상태로 빠짐 없이 세션 공유"
|