프로그래밍 정리/Unity

[Unity - 유니티] 래그돌(Ragdoll) - Rigidbody - isKinematic(래그돌 활성, 비활성화)

주누다 2014. 6. 10. 03:27
반응형

래그돌의 활성, 비활성화를 결정하는 것이라고 볼 수 있는

Rigidbody 컴포넌트의 isKinematic 옵션.


isKinematic 옵션이 true일 경우

- Rigidbody 컴포넌트가 추가된 게임오브젝트가 

물리시뮬레이션을 통해 이동하지 않고

Transform 컴포넌트의 속성에 의해 이동함.


- 애니메이션을 실행하고 있을 때는 각 관절이 애니메이션의 의해

움직이고 있기 때문에 물리엔진의 연산작업이 의미가 없음.


- isKinematic 옵션이 true일 경우 물리엔진의 영향을 받지 않음.


- 래그돌을 활성화 하기 위해서는 반드시

애니메이션은 반드시 정지시켜야함.

=================================================================

ex)

// 애니메이션 정지

animation.Stop();

// 래그돌 활성화

// isKinematic이 false인 경우는

// isKinematic이 true일 경우 물리엔진의 영햘을 받지 않기 때문에

// isKinematic을 false로 줘서 물리엔진의 영향을 받게 하기 위해서임.

isKinematic = false;

=================================================================


- 관절에 추가된 Rigidbody 컴포넌트가 중력 적용이 되어 있어도 

애니메이션 동작이 우선순위에 있음.



반응형