Lerp를 사용하면 a에서 b까지의 값 중, value에 해당하는 위치의 값을 반환한다.
Lerp(a,b,value) => 변하는 위치를 잡거나, 색상을 변경할 때
Stack Project
블럭 쌓기 미니게임 프로젝트를 진행하면서 어려웠던 부분은 없었고, 생소한 함수들이 나왔다.
Mathf.PingPong(T, Length) ==> 0부터 Length까지 T에 해당하는 값을 반환한다!
처음에는 T의 크기에 따라 위치가 변하는 폭이 커진다 생각해서 상수를 넣고 오브젝트를 움직여보고자 했지만,
제자리에 가만히 있었다.
![]() |
![]() |
<왼쪽과 오른쪽은 서로 다른 T 값을 대입함>
결과적으로는 T의 값에 따라 0부터 Length 사이의 특정 위치를 반환해준다고 보면 되겠고, 이를 선형적으로 움직이는 것처럼 표현하기 위해 시간이나 증가하는 변수를 대입해야 원하는 결과(선형적인 위치 결과)를 내줄 수 있겠다.
그럼 음수가 들어갔을 땐? --> gpt는 예상치 못한 결과가 나올 것이라 했는데, 막상 음수로 변환해서 출력해보니 0부터 정해진 범위 내로 잘 움직인다. 여기에 대해선 좀 더 세밀한 테스트 결과가 있어야할 듯 하지만.. 일단은 패스
아래는 시작 화면에서 블럭이 생성되고 카메라의 정중앙이 아닌 카메라의 위치에서 생성되고 시작이 된 후에 제자리를 찾아가는 현상이 생겨 찍은 캡쳐본이다.
그러니까 시작할 때 화면 중앙에 표시되어야할 두 블럭이 카메라 코앞에서 생성되길래 어디가 문제인가 봤더니
이 블럭을 쌓는 오브젝트의 위치가 문제였다.(생성 직후 reset transfrom을 해야 하는 이유.jpg)
리셋 해준 후 로테이션 값을 원래대로 맞추어주니 정상적으로 돌아왔다.
![]() |
![]() |
단순 pingpong만 사용하는 것과 lerp를 같이 사용하는 것에 살짝 의문이 들어 둘의 차이를 보도록 움직임을 각각 pingpong만 넣은 것과 lerp를 넣은 것을 비교해보았는데, 단순 블럭이어서 그런지 움직임에서는 차이를 못 느꼈지만 색상이 변화하는 테스트에서는 확실한 차이가 느껴졌다. pingpong만 들어간 경우에 색상이 휙휙 바뀌는 반면 lerp는 부드럽게 변화하는 것을 볼 수 있었다.
내일은 남은 강의를 마저 완강하고 프로젝트를 마무리할 수 있도록 해야지
'[내일배움캠프 Unity 9기]' 카테고리의 다른 글
| 05/02 트러블 슈팅 (0) | 2025.05.02 |
|---|---|
| 05/01 TIL - 처음 보는 함수 정리 (0) | 2025.05.01 |
| 04/29 TIL - 유니티 입문 강의 수강 (1) | 2025.04.29 |
| 04/28 TIL - 복습내용(시간 기반 서버 루프 / 메모리 디버깅) (0) | 2025.04.28 |
| 04/25 복습내용 (0) | 2025.04.25 |



