how to make player movement in C# in unity with keyboard
Here is how to make 3D movement with transform.
float h = Input.GetAxisRaw("Horizontal");
float v = Input.GetAxisRaw("Vertical");
transform.Translate(h * Time.deltaTime * speed, 0f, v * Time.deltaTime * speed);
Remember to create a public float for the speed variable. Like this.
public float speed = 5f;
You can change 5f to what ever you want. Just make sure to add f at the end. Example: 10f or 15f.
And you can still do physics.
I hope this helped.
public float moveSpeed;
void Update{
float horiz = Input.GetAxis("Horizontal") * moveSpeed;
float vert = Input.GetAxis("Vertical") * moveSpeed;
transform.position += transform.foward * vert * Time.deltaTime;
transform.position += transform.right * horiz * Time.deltaTime;
}
For this script it's pretty simple and if you didn't mess with the Input Manager (Edit>Project Settings>Input Manager>Axes) Then it will grab the horizontal and vertical inputs which goes for both WASD and Arrow Keys and will even work for controller if you wanted that.