[ Unity ]/- 유니티 실습
유니티 - [rotation, LookRotation, Quaternion, Slerp]
MRG
2022. 4. 7. 20:07
728x90
반응형
▣ 안녕하세요. 이번장에서는 LookRotation, Quaternion, Slerp을 사용하여
타깃을 향해서 회전을 하는 코드를 공부해보겠습니다.
▣ 우선 3D 프로젝트를 만들어서 캡슐 오브젝트로 Player와 큐브로 Enemy오브젝트를 만들어주세요.
그리고 player오브젝트에는 PlayerManager라는 스크립트를 생성해주세요.
728x90
▣ obj 게임오브젝트로 바라볼 오브젝트를 지정해주시고,
업데이트 함수에서 transform.rotation을 지정하겠습니다.
이건 현재 나의 회전 값을 지정하는 코드입니다.
여기에 Quaternion.LookRotation()함수를 사용하겠습니다.
이 함수는 해당 백터를 바라보는 함수입니다.
여기에 우리가 바라볼 오브젝트에 포지션값을 넣게 되면 플레이어가 obj를 바라보며 회전하게 됩니다.
저장하고
▣ 플레이를 하고 Enemy 포지션을 바꿔보면 플레어가 적을 보며 회전하는 걸 확인할 수 있습니다.
▣ 이번에는 Quaternion.Slerp()함수를 사용하겠습니다.
이건 일정 시간을 두고 목표하는 방향으로 회전하는 코드입니다.
처음에 나의 회전값, 내가 볼 오브젝트, 시간을 넣어주면 됩니다.
Time.deltaTime만 넣게 되면 너무 느리게 회전하는 것처럼 보이기 때문에 speed 값도 값이 곱했습니다.
저장을 하고
▣ 회전을 하면 아까와 다르게 부르럽게 회전이 되는 걸 확인할 수 있습니다.
728x90
반응형