本文へスキップ
Unity Tutorial

Mover un jugador 3D con el teclado en Unity

Usa Input.GetAxisRaw y CharacterController para crear un movimiento WASD facil de leer.

公開日: 2026-06-03#Unity#Input#CharacterController#3D
+
*
+
Coco, personaje guia・喜ぶ
Coco
Guia de aprendizaje de game dev
Esta leccion sigue la misma estructura guiada que la version japonesa: vista inicial, dialogo, pasos y cierre practico.
+
*
+
Hajime, personaje aprendiz・混乱
Hajime
Aprendiz principiante de game engines
Quiero entender que hacer primero, que revisar y como comprobar que realmente lo aprendi.
Coco, personaje guia
Esta leccion presenta un controlador clasico de movimiento y muestra como la entrada del teclado se convierte en desplazamiento dentro de la escena.
Hajime, personaje aprendiz
Revisa objetivo, entrada y criterio de exito
Coco, personaje guia
La leccion se sigue mejor cuando sabes que debe pasar en pantalla y que cuenta como completado.

Resumen de la leccion

Termina primero un resultado que funcione

1.

Objetivo

Esta leccion presenta un controlador clasico de movimiento y muestra como la entrada del teclado se convierte en desplazamiento dentro de la escena.

2.

Tiempo

25-35 min / Principiante

3.

Resultado

WASD o flechas mueven al jugador.

Puntos antes de empezar

Revisa objetivo, entrada y criterio de exito

La leccion se sigue mejor cuando sabes que debe pasar en pantalla y que cuenta como completado.

1

Esta leccion presenta un controlador clasico de movimiento y muestra como la entrada del teclado se convierte en desplazamiento dentro de la escena.

2

Crea un objeto simple para el jugador y añade un CharacterController.

3

WASD o flechas mueven al jugador.

1Paso a paso

1
Step 1
Prepara un objeto jugador
Crea un objeto simple para el jugador y añade un CharacterController.
2
Step 2
Lee la entrada horizontal y vertical
Usa Input.GetAxisRaw para Horizontal y Vertical para capturar WASD o flechas.
3
Step 3
Convierte la entrada en movimiento
Crea un Vector3, normalizalo cuando haga falta y pasalo a CharacterController.Move.

2Codigo

Keyboard movement
csharp
using UnityEngine;

public class KeyboardMove3D : MonoBehaviour
{
    [SerializeField] private float moveSpeed = 5f;
    [SerializeField] private CharacterController controller;

    private void Update()
    {
        float x = Input.GetAxisRaw("Horizontal");
        float z = Input.GetAxisRaw("Vertical");

        Vector3 move = new Vector3(x, 0f, z).normalized;
        controller.Move(move * moveSpeed * Time.deltaTime);
    }
}

3Checklist

  • WASD o flechas mueven al jugador.
  • La velocidad diagonal esta controlada.
  • La logica es legible para ampliarla despues.

4Revision con personajes

Hajime, personaje aprendiz
WASD o flechas mueven al jugador.
Coco, personaje guia
completa primero la leccion tal como esta y luego cambia un valor o detalle visual para fijar el aprendizaje.
Variacion pequena: completa primero la leccion tal como esta y luego cambia un valor o detalle visual para fijar el aprendizaje.

Siguientes tutoriales