🕹️ Curso rápido: Godot desde cero en 20 minutos – Crea tu primer juego en 2025

Meta descripción:
Aprende Godot desde cero en 20 minutos y crea tu primer juego 2D paso a paso con código real. Ideal para principiantes en 2025.

Introducción

Como desarrollador e instructor técnico con experiencia práctica en React, .NET y desarrollo de videojuegos, sé lo importante que es dominar herramientas modernas que te permitan crear proyectos reales sin depender de grandes equipos ni presupuestos.
En 2025, Godot se ha convertido en una de las opciones más potentes y libres para crear videojuegos profesionales, gracias a su nueva versión Godot 4.x, su lenguaje GDScript (similar a Python) y su integración nativa con C#.

En este curso rápido: Godot desde cero en 20 minutos, aprenderás a crear tu primer juego completo en 2D, entender cómo funciona la escena, los nodos, el movimiento y las colisiones, y verás cómo preparar tu proyecto para exportarlo a PC, Web o Android.

¿Qué es Godot?

Godot Engine es un motor de videojuegos open source que te permite crear juegos 2D, 3D y VR con un flujo de trabajo visual y un lenguaje de programación fácil de aprender.
A diferencia de Unity o Unreal, Godot no cobra licencias ni royalties, y tiene una comunidad en crecimiento impulsada por desarrolladores independientes.

Ventajas principales

  • 💡 Open Source y gratuito: sin licencias ni pagos por ingresos.
  • 🧩 Arquitectura basada en nodos y escenas: fácil de reutilizar y mantener.
  • 🖥️ Multiplataforma: exporta a Windows, Linux, macOS, Web, Android e iOS.
  • 🐍 Lenguaje intuitivo (GDScript): similar a Python, con curva de aprendizaje rápida.
  • Soporte para C#, C++ y Visual Scripting.

📘 Documentación oficial:
👉 https://docs.godotengine.org

¿Por qué es importante aprender Godot en 2025?

En 2025, Godot ha ganado terreno frente a Unity por varias razones clave:

  1. Licencia MIT sin restricciones: tras las controversias de precios en otros motores, muchos estudios y desarrolladores indie migraron a Godot.
  2. Soporte de .NET 9 y C# moderno: integración fluida para quienes vienen del mundo empresarial o web.
  3. Exportaciones WebGL y móviles optimizadas: ideal para juegos ligeros y virales.
  4. Ecosistema maduro: herramientas de animación, físicas y shaders integradas.

Aprender Godot hoy significa entrar en un ecosistema abierto, escalable y listo para el futuro, perfecto si vienes del desarrollo web o backend y quieres expandirte al mundo del game dev.

🚀 Paso a paso: tu primer juego en Godot en 20 minutos

Vamos a crear un juego 2D simple tipo “Catch the Star”: un personaje que se mueve y recolecta objetos.

1. Crear el proyecto

  1. Abre Godot 4.x.
  2. Haz clic en New Project → Choose Folder → Create & Edit.
  3. Crea una carpeta llamada JuegoEstrella.
  4. Se abrirá el editor principal con un lienzo vacío.

2. Crear la escena principal

  1. Haz clic en + Add Child Node → Node2D.
  2. Nómbralo Main.
  3. Guarda la escena con Ctrl + S como Main.tscn.

3. Añadir el jugador

  1. Añade un Sprite2D y un CollisionShape2D como hijos del nodo Player.
  2. Asigna una textura (por ejemplo, un PNG de un personaje).
  3. En CollisionShape2D, elige un RectangleShape2D.

📄 Código (Player.gd):

extends CharacterBody2D

@export var speed = 200

func _process(delta):
    var input_vector = Vector2.ZERO
    if Input.is_action_pressed("ui_right"):
        input_vector.x += 1
    if Input.is_action_pressed("ui_left"):
        input_vector.x -= 1
    if Input.is_action_pressed("ui_up"):
        input_vector.y -= 1
    if Input.is_action_pressed("ui_down"):
        input_vector.y += 1
    
    velocity = input_vector.normalized() * speed
    move_and_slide()

💡 Explicación:

  • CharacterBody2D maneja movimiento y colisiones.
  • Input.is_action_pressed detecta las teclas de movimiento.
  • move_and_slide() aplica el desplazamiento con físicas suaves.

4. Añadir objetos coleccionables

  1. Crea una nueva escena Star.tscn con un Area2D, Sprite2D y CollisionShape2D.
  2. Añade este script:
extends Area2D

signal collected

func _on_body_entered(body):
    if body.name == "Player":
        emit_signal("collected")
        queue_free()

3.En la escena principal (Main.tscn), instancia varias estrellas y conéctalas al script principal:

extends Node2D

@onready var score_label = $Label
var score = 0

func _ready():
    for i in range(5):
        var star = preload("res://Star.tscn").instantiate()
        star.position = Vector2(randi() % 400, randi() % 300)
        add_child(star)
        star.connect("collected", Callable(self, "_on_star_collected"))

func _on_star_collected():
    score += 1
    score_label.text = "Puntaje: %s" % score

🧠 Pro tip: usar preload() mejora el rendimiento precargando la escena.

5. Ejecutar y probar

Pulsa ▶️ (Play) y prueba tu juego.
Podrás mover el personaje con las flechas y recolectar las estrellas que desaparecen al tocarlas.

⚙️ Buenas prácticas en Godot

  • Usa escenas reutilizables para mantener tu juego modular.
  • Evita lógica duplicada: usa scripts compartidos o nodos heredados.
  • Exporta constantes (@export var) para ajustar valores sin tocar el código.
  • Nombrado claro: usa Player.gd, Enemy.gd, Main.tscn, etc.
  • Control de versiones: agrega .import/ a tu .gitignore.

⚠️ Errores comunes y cómo evitarlos

ErrorCausaSolución
El jugador no se mueveNo usaste move_and_slide() o el nodo no es CharacterBody2DAsegúrate de extender el nodo correcto
Colisiones no funcionanFalta CollisionShape2D o está mal ajustadoVerifica su forma y tamaño
Señales no conectanNombres incorrectos o escenas sin referenciasUsa Callable para conectar de forma segura
Juego lentoMuchos nodos sin necesidadUsa instanciación dinámica o pooling

❓ Preguntas frecuentes (FAQs)

¿Godot usa C# o GDScript?

Ambos. Godot soporta C# (con .NET 9) y GDScript, que es más ligero y se carga más rápido.

¿Puedo exportar mi juego a Android?

Sí, desde 2025 Godot integra un exportador nativo Android AAB listo para Google Play.

¿Necesito saber programación?

No, pero ayuda. Godot tiene Visual Scripting, ideal para principiantes sin experiencia.

¿Es mejor que Unity o Unreal?

Depende del tipo de proyecto. Para juegos 2D, indie o educativos, Godot es más liviano y ágil.

📚 Recursos oficiales y recomendados

Te puede interesar...

Deja un comentario