Этот вопрос закрыт для ответов, так как повторяет вопрос Почему Camera.ScreenPointToRay работает криво и не точно?
@ikeky

Почему игрок не может повернуться к курсору в 3d top-down игре?

Я делаю 3д игру, и как по мне эта 3дшность и является основной проблемой не точности поворота игрока в сторону курсора.
Вот код игрока:
void Update(){
   RaycastHit hit;
   Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
   if (Physics.Raycast(ray, out hit)){
      Vector3 pointToLook = hit.point;
      transform.LookAt(2 * transform.position - pointToLook);
   }
}

Если что я использую Camera.main.ScreenPointToRay и transform.LookAt, может быть они не являются оптимальными в данной задаче.
видео с примером ошибки
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
@ikeky Автор вопроса
Мне нашли решение в зарубежном сайте stackoverflow, где прекрасно описали ошибку, подробнее об этой проблеме можете найти здесь
Вот решение:
Debug.Log(Input.mousePosition);
        RaycastHit hit;
        Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
        if (Physics.Raycast(ray, out hit)){
            Vector3 pointToLook = hit.point;
            Vector3 projection = Vector3.ProjectOnPlane(transform.position - pointToLook, Vector3.up);
            transform.forward = projection;
        }
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы