1. RigidBody를 사용할 경우 KinematicBody에서와 같은 is_on_floor(), is_on_wall(), 그리고 is_on_celling()과 같은 함수를 지원하지 않는다.

2. RigidBody를 사용할 경우, 바닥을 체크할 수 있는 방법은 RayCast와 Area를 이용하는 방법이 있다.

3. RayCast를 이용하여 바닥을 체크할 경우, 위의 이미지와 같은 위치에 서 있을 경우 점프를 할 수 없는 경우가 생긴다.(바닥 상태여야만 점프를 할 수 있게 코딩을 한 경우에 해당)

4. 3번과 같은 경우는 RayCast를 여러개 사용하면 해결할 수 있다.

 

결론 : 바닥상태 체크는 오히려 Area를 사용하는 것이 더 좋을 것 같다.(3.1에서 RayCast Shape가 추가될 예정이라 위와 같은 문제가 해결될 수도 있슴.)

+ Recent posts