From 9eebbec03a11948ea521c451c0a5cfeabc6a1c1e Mon Sep 17 00:00:00 2001 From: swrring Date: Sat, 9 May 2026 22:41:44 +0900 Subject: [PATCH] =?UTF-8?q?fix(BT12-Dev):=20=EC=A7=81=EC=A0=84=20Kinematic?= =?UTF-8?q?=20Rigidbody2D=20=ED=9A=8C=EA=B7=80=20=EC=A0=95=EC=A0=95=20?= =?UTF-8?q?=E2=80=94=20Static=20vs=20Kinematic=20Trigger=20=EC=A0=95?= =?UTF-8?q?=ED=95=A9=20=EB=B3=B5=EC=9B=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 회귀 사실 (C3 자진 고지): - 직전 fix `fe65592` Projectile Rigidbody2D Kinematic 추가 - Enemy = KinematicObject 상속 → Rigidbody2D Kinematic - → Kinematic vs Kinematic + useFullKinematicContacts=false (기본값) - → OnTriggerEnter2D 발화 X → 적 피격 X 회귀 근본 원인: - C39 위반 — Enemy Rigidbody2D type 사전 실측 X - KinematicObject.cs:76 영역 Read X·라이프사이클 검증 X 해결 (옵션 C — 단순 회귀): - ProjectileSpawner.CreateFallbackProjectile 영역 Rigidbody2D 추가 영역 5 라인 제거 - Static Collider + Enemy Kinematic Rigidbody2D = OnTriggerEnter2D 발화 정합 복원 - `33eaa55` 시점 동작 정합 영역 복원 (DebuffStackLimit 정정 영역 그대로 유지) 자성 추가: - 헌법급 feedback `feedback_new_code_existing_system_dependency_unmeasured` 신설 - 신규 코드 영역 기존 시스템 의존성 미실측 금지 (재발 차단 3 단계) PD 보고 (2026-05-09 3차): "여전히 적이 플레이어의 투사체에 피격되지 않아" 회귀 정정. --- Assets/Scripts/Skills/Effectors/ProjectileSpawner.cs | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/Assets/Scripts/Skills/Effectors/ProjectileSpawner.cs b/Assets/Scripts/Skills/Effectors/ProjectileSpawner.cs index 898c517..06c5960 100644 --- a/Assets/Scripts/Skills/Effectors/ProjectileSpawner.cs +++ b/Assets/Scripts/Skills/Effectors/ProjectileSpawner.cs @@ -81,13 +81,10 @@ namespace EerieVillage.Skills.Effectors col.isTrigger = true; col.radius = 0.2f; - // BT12-Dev 2026-05-09 — Trigger 판정 안정성 보강: - // Unity 2D OnTriggerEnter2D 발화는 양쪽 중 한쪽 Rigidbody2D 영역 의무. - // transform.position 이동 영역 Physics2D 동기화 안정성 확보 위해 Kinematic Rigidbody2D 부착. - var rb = go.AddComponent(); - rb.bodyType = RigidbodyType2D.Kinematic; - rb.gravityScale = 0f; - rb.collisionDetectionMode = CollisionDetectionMode2D.Continuous; + // BT12-Dev 2026-05-09 — Rigidbody2D 부재 유지 (Static Collider). + // Enemy = KinematicObject 상속 → Rigidbody2D Kinematic. + // Static vs Kinematic = OnTriggerEnter2D 발화 정합 (Unity 2D Physics 표준). + // 직전 시도 Kinematic Rigidbody2D 추가는 Kinematic vs Kinematic 영역 OnTriggerEnter2D 발화 X 영역 회귀 → 폐기. var sr = go.AddComponent(); sr.sprite = GetOrCreateFallbackSprite();