Я изо всех сил пытаюсь найти способ управлять своим персонажем в C# около 5-6 часов. Я просто хочу сделать это максимально простым. (нажмите W - он идет вверх, отпустите клавишу W, он останавливается) И абсолютно ничего, что я не нашел в Google, не помогает. Даже это действительно длинный код, которого я не понимаю, потому что я только начал учиться, даже это не то, что я хочу. Например, это похоже на самый просматриваемый учебник, но он не работает для моей «игры». Это может сработать для парящего / летающего персонажа, но не для базового.
private Rigidbody2D rb2d;
public float speed = 10f;
void Start()
{
rb2d = GetComponent<Rigidbody2D> ();
}
void FixedUpdate()
{
float moveHorizontal = Input.GetAxis("Horizontal");
float moveVertical = Input.GetAxis("Vertical");
Vector2 movement = new Vector2(moveHorizontal, moveVertical);
rb2d.AddForce(movement * speed);
}
}





Вы можете либо переписать
rb2d.AddForce(movement * speed);
к
rb2d.AddForce(movement * speed, ForceMode2D.Force);
или полностью заменить его на
rb2d.velocity = movement * speed;
Добро пожаловать в Unity. Даже опытным программистам приходится учиться при переходе от бизнес-приложений к разработке игр. Думаю этот учебник поможет вам