Задать вопрос
@kechers

Почему в данном случае возникает ошибка: CS1503 Аргумент 1: не удается преобразовать из «UnityEngine. Quaternion» в «UnityEngine.Vector3»?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerController : MonoBehaviour
{
public float movementSpeed = 1;
Rigidbody rb;
void Start()
{
rb = GetComponent();
}


void Update()
{
Vector3 move = new Vector3(Input.GetAxis("Horizontal"), 0f, Input.GetAxis("Vertical")) * movementSpeed;
move = Vector3.ClampMagnitude(move, movementSpeed);

if (move != Vector3.zero)
{
rb.MovePosition(transform.position + move * Time.deltaTime);
rb.MovePosition(Quaternion.LookRotation(move));
}
}
}
  • Вопрос задан
  • 297 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Software-testing.ru
    Программирование на C# для тестировщиков
    10 недель
    Далее
Решения вопроса 2
ты пытаешься передать квартернион туда, где ожидается вектор.
Ответ написан
Комментировать
AshBlade
@AshBlade Куратор тега C#
Просто хочу быть счастливым
Дополняя ответ Василий Банников.

- Vector3 - это вектор из 3 координат
- Quaternion - это вектор из 4 координат

Невозможно преобразовать, т.к. откуда знать что за 4-ая координата
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы