Q.Rigidbody컴포넌트가 뭐야?
A. Unity 내에서 제공하는 물리연산 컴포넌트이다.
Q.AddForce() 메서드는 어디다가 써?
A.Rigidbody가 적용된 오브젝트에 AddForce 메서드를 사용하면 외부에서 물리적인 힘을 가하는 물리현상을 나타낼때 사용한다.
Q.AddForce()를 어떡해 써?
A.코드는 기본적으로 이런식으로 쓴다.
private Rigidbody _rigidbody;
private void Awake()
{
_rigidbody = GetComponent<Rigidbody>(); //오브젝트에 있는 Rigidbody 컴포넌트 호출
}
private void OnJump()
{
//rigidbody컴포넌트에서 AddForce() 메서드를 호출하여 사용
_rigidbody.AddForce(Vector2.up * jumpPower, ForceMode.Impulse);
}
AddForce() 인자값으로 ForceMode라는 enum 값이 아래와 같이 들어가게된다.
아래의 코드는 유니티 엔진 내부 코드이다.
ForceMode Type | 설명 |
Force | 힘을 지속적으로 적용할때 사용됨 |
Acceleration | 가속도를 적용할떄 사용되며, 이전 힘의 누적에 따라서 점진적으로 더 빠르게 움직이게 됨 |
Impulse | 순간적인 힘을 적용하여, 짧은시간에 빠른 움직임이 필요할때 사용 |
VelocityChange | 변화하는 속도를 적용, 오브젝트의 현재 속도를 변경하면서 사용될때 사용됨 |
'Unity' 카테고리의 다른 글
Unity :: UnityEngine에서 제공하는 Pool 패키지(오브젝트 풀) (0) | 2024.10.23 |
---|---|
Unity :: (2024.10.21수정)제네릭 클래스를 상속받은 Class는 오브젝트 생성 및 컴포넌트로 사용 할수 잇지만 제네릭 클래스 그 자체는 사용 할 수 없다. (0) | 2024.10.21 |
Unity :: TMP(Text Mesh Pro) 한글 폰트로 쓰기 , 스크립트에서 사용하기 (0) | 2024.10.15 |
Unity :: 비트연산자와 레이어마스크 (0) | 2024.10.14 |
Unity :: StringToHash 메서드 사용하기(애니메이터 컨트롤러) (0) | 2024.10.14 |