Unity

transform.position 와 rigidbody.position 의 차이

JunOnJuly 2023. 11. 9. 22:40
728x90

Unity 에서 Object 를 원하는 방향으로 이동시킬때 transform.position 이나 rigidbody.position 을 사용하곤 합니다. 

언뜻 보면 작동 방식이 같은 것 같지만 어떤 차이가 있어서 분리해놨는지 알아보겠습니다.


transform.position 은 이동 후 모든 콜라이더가 리지드바디를 기준으로 위치를 다시 계산합니다. 하지만 rigidbody.position 은 다음에 있을 물리 시뮬레이션 이후에 변환이 업데이트 됩니다.

출처 : https://docs.unity3d.com/ScriptReference/Rigidbody-position.html

 

정리하자면

transform.position 위치 변환 -> 위치 계산 -> 물리현상 계산

의 과정을 거치지만

rigidbody.position물리 계산  -> 위치 변환

으로 계산 과정이 한 단계 줄어들기 때문에 rigidbody.position이 transform.position 보다 성능이 좋습니다. 다만 rigidbody 를 사용하지 않을 때, 즉 강체가 아닐 때에는 rigidbody 가 없기 때문에 transform.position 을 사용합니다.

728x90

'Unity' 카테고리의 다른 글

게임 시점  (0) 2023.11.10
Instantiate  (3) 2023.11.09
PlayerPrefs (플레이어 프리팹)  (0) 2023.11.07
Unity  (0) 2023.11.04