Пишу 2d top down шутер на Unity 2017.1 C#. 2 дня как пытаюсь реализовать движение игрока по курсору. Вот мой код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class playerMove : MonoBehaviour {
void FixedUpdate () {
GetComponent<Rigidbody2D>().AddForce(Input.GetAxis("Horizontal"));
GetComponent<Rigidbody2D>().AddForce(Input.GetAxis("Vertical"));
}
}
Этот код выводит ошибки..
Assets/Scripts/playerMove.cs(8,31): error CS1502: The best overloaded method match for `UnityEngine.Rigidbody2D.AddForce(UnityEngine.Vector2)' has some invalid arguments
Assets/Scripts/playerMove.cs(8,46): error CS1503: Argument `#1' cannot convert `float' expression to type `UnityEngine.Vector2'
Assets/Scripts/playerMove.cs(9,31): error CS1502: The best overloaded method match for `UnityEngine.Rigidbody2D.AddForce(UnityEngine.Vector2)' has some invalid arguments
Assets/Scripts/playerMove.cs(9,46): error CS1503: Argument `#1' cannot convert `float' expression to type `UnityEngine.Vector2'
Что делать?
Метод AddForce()
принимает аргументом тип Vector2
, а вы ему даете на вход результат функции Input.GetAxis()
, которая возвращает float.
Правильней будет так :
GetComponent<Rigidbody2D>().AddForce(new Vector2(Input.GetAxis("Horizontal"), Input.GetAxis("Vertical"));
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть сайт, на нем svg графикНадо сделать скриншот этой страницы
Есть код VBScript, нужно его конвертировать в C#, но в VBS я 0, поможет кто?