TIL
Rigidbody의 velocity를 변경하는 것은 위치를 즉시 변경하는 행위가 아니라 물리 엔진에게 현재 오브젝트의 속도를 알리고 물리 엔진이 해당 물체의 위치를 여러 물리 연산 끝에 계산하여 옮기게 하는 것이다.
Transform.Translate() 메서드는 물리 엔진과 상호작용하지 않고 위치를 즉시 바꾼다.
AddForce는 velocity와 같이 물리 연산을 통해 물체를 옮기는 것이다. 물리 엔진을 이용한다는 점에서 velocity와 유사하지만 질량 관성을 무시한 체 주어진 속도로만 이동하는 velocity와 달리 AddForce 함수는 가해지는 힘을 누적시켜 물리, 질량, 관성에 영향을 받는다.
유니티를 사용하면서 같은 키워드지만 대문자 소문자로 구분되어 있는 경우를 많이 봤고 Transform과 transform 그 중 하나이다. 유니티에서는 다음과 같은 규칙으로 대소문자를 정한다.
따라서 Transform은 클래스, transform은 변수라 할 수 있다.
비슷한 예로 GameObject와 gameobject도 있는데 같은 원리로 이해하면 된다.
Rect Transform 컴포넌트는 Transform 컴포넌트의 2D 레이아웃 버전이다.
GetButton은 project setting의 input에서 customize할 수 있는 반면 GetKey는 정해진 키만 사용하여야 한다는 차이를 지니고 있다.
한 Reddit 유저의 도움을 받아 작성해 보자면 TMP(TextMexhPro) 비주얼적으로 더 나은 성능을 보인다.