728x90
반응형
프로젝트를 하며 자연스러운 카메라 이동을 구현하면서 Lerp와 LerpUnclamped의 차이에 관심을 갖게 되었는데요?
( 물론 Dotween을 사용하면 쉽겠지만, 특정 물체를 쫓아가는 단순한 움직임이기 때문에 굳히 사용하여 부하를 늘릴 필요는 없을 것 같았어요. )
평소에는 un clamped라는게 있구나, 하고 넘겼는데 이제서야 관심을 갖고 보게 되는군요.
https://www.reddit.com/r/Unity3D/comments/6kqy86/vector3_lerp_vs_lerpunclamped/
당연히 레딧에서 질문이 있었죠!
답변은 간단 명쾌했습니다.
Unclamped lerps are allowed to go beyond the provided inputs if t is less than zero or greater than one. Normal lerps restrict the result so that it cannot be smaller than the smaller input or larger than the larger input.
Unclamped lerp는 lerp와 달리 t값(보간 정도 조정 상수)에 대한 제약이 없어 0 밑으로도, 1위로도 가능하다.
Mathf.LerpUnclamped(1.0, 2.0, 1.5) == 2.5
Mathf.Lerp (1.0, 2.0, 1.5) == 2.0
위 코드를 보면 일반적인 Lerp는 1보다 높은 t 값을 주더라도, 최대 허용값이 1이므로 b(두 번째 매개변수)의 값을 넘지 못합니다.
하지만 LerpUnclamped는 넘어가서 2.5라는 결과를 도출하는 군요.
728x90
반응형
'개발 · 컴퓨터공학' 카테고리의 다른 글
네트워크 프로그래밍 - OSI 7 계층의 구성 (0) | 2021.09.01 |
---|---|
네트워크 프로그래밍 - TCP/IP의 계층은 왜 있는가? (0) | 2021.08.31 |
Animation Component AddClip이 되지 않는 문제 - The animation state "~" could not be played because it couldn't be found! (0) | 2021.05.24 |
A* Pathfinding Project Asset - Grid Graph에서 갈 수 없는 노드 체크하기 (0) | 2021.04.25 |
Git - rebase 하는 법 (어떤 상황에서 rebase를 사용하나?) (0) | 2021.04.16 |