我正在努力大约5-6个小时,以找到一种方法来控制我在C#中的角色。我只是想使其尽可能简单。 (按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);
}
}
答案 0 :(得分:1)
您可以重写
rb2d.AddForce(movement * speed);
到
rb2d.AddForce(movement * speed, ForceMode2D.Force);
或完全替换为
rb2d.velocity = movement * speed;