작성
·
198
답변 1
1
아.. 제가 답변을 했다고 생각하고 있었네요ㅠㅠ;;
오브젝트의 쿼터니온 회전은 현재 오브젝트가 바라보고 있는 방향입니다.
오브젝트의 이동은 Vector3(x, y, z)로 x, y, z방향으로 이동합니다.
Vector3(10, 0, 0)이라고 하면 x축 방향으로 10만큼 이동하는거죠
근데 이 x축 방향으로 10만큼 이동은 현재 오브젝트가 보고 있는 방향과 관계없이 무조건 x축으로 이동합니다.
즉, 오브젝트가 회전해서 어떤 방향을 바라보던 월드 기준으로 x축으로만 이동하죠.
그래서 "오브젝트가 보고 있는 방향을 기준으로 이동"을 하려면 현재 오브젝트의 회전 정보가 필요합니다.
그걸 수식으로 나타내면 쿼터니온 회전 * Vector3(10, 0, 0)과 같이 나타낼 수 있습니다.
앞의 Vector3(10, 0, 0)은 오브젝트의 회전과 관계없이 월드 기준 x축으로 10만큼 이동이고,
쿼터니온 회전 * Vector3(10, 0, 0)은 오브젝트가 바라보고 있는 전방 방향을 기준으로 오른쪽으로 10만큼 이동이 됩니다.
이 강의에선 카메라가 플레이어를 바라보고 있기 때문에 플레이어를 바라보고 있는
현재 방향을 기준으로 플레이어 뒤통수 방향으로 -distance만큼 떨어져서 배치되도록 하기 위해
쿼터니온 회전 * (0, 0, -distance)와 같이 작성했습니다.
쉽게 설명해주셔서 너무 좋습니다 ㅠㅠ 감사합니다 !!