Unreal Engine/UE4 C++ 게임 개발 공부
[짤막 팁] UE4의 벡터 정규화(Normalize)
JJPearl
2022. 6. 25. 01:04
반응형
점 A에서 점 B로 가는 벡터 = B벡터 - A벡터 (시작위치 A, 목적지 B 라면 목적지-시작위치)
일정한 속도로 이동하려면 이 벡터를 정규화(normalize) 해야 한다. == 크기를 1이 되게 만든다.(언리얼 단위는 cm로 취급됨)
-> 틱 단위로 적절한 속도의 움직임을 만들기 위해 속도를 곱할 수 있다.
- FVector의 정규화(Normalize) 함수
- Normalize: 실제로 벡터 자체를 수정함.
- GetSafeNormal: 새로운 벡터를 생성. 정규화된 벡터는 보호된다.
(언리얼에서의 Normal은 정규화된 벡터를 의미, 법선벡터 의미X)
-> 벡터 자체를 수정하지 않는 것이 좋은 습관. 소스가 변형되면 버그 찾기 힘들다.
-> 정확한 계산이 가능하다.(아주 작은 오차는 존재) - GetUnsafeNormal: 숫자가 아주 작을 때에 대한 보호가 없다. (부동소수점 오류)
반응형