PD 명시 (2026-05-08): "1차 2차 모두 순차적으로 일괄 진행"
2차 = 4개 .anim 영역 sprite reference 영역 M001 순환 매핑 (Python 자동):
- EnemyIdle.anim: 48 keyframes → M001_idle 4 frames (4-cycle, 12회 반복)
- EnemyRun.anim: 15 keyframes → M001_run 5 frames (5-cycle, 3회 반복)
- EnemyHurt.anim: 9 keyframes → M001_hit 2 frames (2-cycle)
- EnemyDeath.anim: 8 keyframes → M001_death 4 frames (4-cycle, 2회 반복)
매핑 알고리즘:
- m_PPtrCurves 영역 keyframe별 sprite reference 영역 (fileID, guid, type)
- keyframe_index % m001_frame_count → M001 frame 순환 매핑
- fileID = 21300000 (Multiple sprite mode 첫 sprite)
1차 (BT76 commit 020a220) + 2차 (본 commit) = 일괄 진행 결과:
- Enemy.prefab 정지 sprite = M001_idle01 (BT76)
- 4 모션 애니메이션 = M001 frames 순환 (BT77)
attack 영역 후속 권고:
- Enemy.controller 영역 attack state 미존재 (현재 4 motion만 — Idle·Run·Hurt·Death)
- attack 영역 추가 시 신규 .anim 영역 + controller 영역 state·transition 신규 의무 (큰 분량)
- PD 결정 영역
본 PM이 외부 영역에서 변경한 BT5-Dev 모든 영역을 EerieVillage git에 반영:
- EnemyController.cs (Distance 기반 감지·VisualBounds·IgnoreCollision·Bounds)
- PlayerEnemyCollision.cs (dyAtCollision·stomped 판정)
- PlayerController.cs (LastGroundedPosition·OnHealthDeath/Resurrect·자동 컴포넌트)
- DeathZone.cs (Coroutine·viewport 외 대기)
- Health.cs (invulnerableDuration 0.5·resurrectInvulnerableDuration 2.0·GrantInvulnerability·이벤트 3종)
- GameOptimizer.cs (신설·targetFrameRate·queriesHitTriggers·SetupOneWayPlatforms)
- PlayerInvulnerabilityFlash.cs (신설)
- ResurrectPromptUI.cs (신설)
- Player.prefab (Collider Size·Offset·m_FlipX 1)
- Enemy.prefab (m_IsTrigger 0)
- Hero1 sprite meta (combatidle 4종 rename)
- _archive/ 폴더 + 9 sprite 이동
- bak_2026* 28 파일 전수 삭제 (D 옵션)
원인 자인:
- 본 PM이 Unity 외부 영역 변경했지만 EerieVillage git commit X 영역 누적 = PD Editor에 도달 X = 옛 코드 동작
- C5·C44 위배
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>