• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

Slerp

21.07.16 14:41 작성 조회수 145

0

slerp함수에 처음벡터와 나중벡터 사이의 일정비율을 나타내는 상수를 넣었는데 그러면 회전하는 속도가 점점 느려지면서 컴퓨터가 더이상 차이를 인식할 수 없을 때까지(?) 최종값에 다가갈 것 같습니다.
여기까지 제가 이해한 것이 맞다면 질문은 두가지입니다.
1. 캐릭터를 회전시키고 싶을 때 현재 코드를 보면 회전이 시작되는 시간은 직관적으로 알 수 있으나 캐릭터가 원하는 방향을 바라볼 때까지 얼마나 키를 누르고 있어야하는지는 직관적으로 알 수 없습니다. 이를 알 수 있는 방법이 있나요 ? 아니면 경험적으로 유니티에서 키를 누르면서 시간을 측정해야하나요?
2. 지금은 Slerp함수에 처음 벡터와 나중벡터 (사원수), 그리고 한번의 운동으로 그 사이 중 얼마만큼 움직일지를 결정하는 비율(상수)를 넣어줬는데 이렇게 되면 매 순간 회전하는 속도를 제어할 수 없는 문제가 있는것 같습니다. Slerp함수에 상수 대신에 시간에 따른 함수값? 같은것을 넣어줄 수 있다면 좀더 자연스럽게 움직이는 캐릭터를 구현할 수 있을것 같다는 생각이 듭니다. 나중에 이러한 방법이 있나요? 아니면 지금까지 배운 회전법을 적절하게 사용하여 실제 게임과 같은 자연스러운 움직임을 구현할 수 있는 것인가요?

답변 1

답변을 작성해보세요.

0

1. 2. 둘 다 비슷한 질문인데 그건 어디까지나 기획의 영역입니다.
RPG 게임에서는 회전에 그 정도로 힘을 쏟지 않고
심지어 서버는 회전중이라는 사실도 모르고 바라보는 방향만 알고 있을 뿐입니다.
그러니 공식으로 정말 더 이쁘게 구현할 필요가 있다면,
그렇게 해도 안 될 것은 없지만 실제로 그렇게 하는 것을 본 적은 없습니다.