1. 오늘 주제
오늘은 Rigidbody2D 에서 BodyType을 바꿔서 사용 했을 때 어떤식으로 작동 되는지에 대해 남겨본다.
- Dynamic
- 물리엔진(Physics 2D)의 모든 영향을 받음 (중력, 충돌 반작용, 마찰, 관성 등).
- 이동, 회전 등이 자동으로 물리 계산되는 오브젝트.
예: 움직이는 플랫폼, 떨어지는 박스, 플레이어 캐릭터 등.
- Kinematic
- 외부 물리 힘(Force)으로는 움직이지 않음.
- 직접 스크립트(velocity, MovePosition, transform.position)로만 제어해 움직이는 타입.
- 충돌 시 상대(Dynamic)가 반응하고, Kinematic 자신은 영향 받지 않음.
예: 문, 엘리베이터, AI 캐릭터(외부 힘 무시), 레이저 발사체 등.
- Static
- 전혀 움직이지 않는, ‘고정된’ 오브젝트.
- 물리엔진은 Static 오브젝트가 움직이지 않는다고 가정하므로,
- 위치를 바꾸면(Transform 변경) 성능 경고나 예측 불가 충돌 문제가 생길 수 있음.
예: 벽, 바닥, 건물처럼 절대 이동하지 않을 맵 환경.