Para desarrollar nuestros juegos necesitamos aprender sobre un lenguaje de programación, en Godot tenemos cuatro opciones:

  • GDScript: es un lenguaje diseñado para Godot, se adapta perfectamente con el editor y esta basado en la sintaxis de Python.
  • VisualScript: te permite crear funcionalidades con una «programación visual», también se adapta perfectamente con el editor de Godot y se asemeja a los Blueprints usados en Unreal Engine.
  • C++: el lenguaje con mejor rendimiento que podemos tener en un motor de videojuegos, ahora en Godot 3 podemos incluirlo fácilmente como GDNative.
  • C#: incluido en la última actualización de Godot, disponemos de soporte oficial para el lenguaje de programación mas querido para el desarrollo de vídeojuegos. Para usarlo necesitaremos descargar la versión Mono de Godot.

Es recomendable que aprendas un lenguaje de programación como C# o C++, son más generales y aprenderlos te puede ser útil para otro trabajo de software. Actualmente se esta mejorando la integración de C# en Godot, aunque todavía no se encuentra la estabilidad de Unity (motor que lleva años usándolo), ya puedes empezar a hacer pruebas con C# desde Godot.

Me parece que el flujo de trabajo en VisualScript es mas lento, es una buena alternativa al código para las personas que recién empiezan a programar. Si ya tienes conocimientos previos sobre un lenguaje de programación y entiendes sobre los fundamentos básicos, te vendría mejor aprender un poco sobre GDScript, no es difícil y, al igual que VisualScript, esta preparado para funcionar perfectamente en Godot.

Si somos unos maestros y queremos el mejor rendimiento para nuestro proyecto, podemos combinar los cuatro lenguajes. No hay límites para trabajar en Godot.

Agregar un Script

Para agregar un nuevo Script, vamos a hacer clic derecho en un nodo y buscamos la opción «Adjuntar Script»:

Es importante especificar el lenguaje que usaremos y la ruta donde guardaremos el documento. Por defecto se guarda en la misma carpeta del nodo al que adjuntamos el script.

Funciones básicas en GDScript

Si creamos el script con la plantilla «Predeterminado», vamos a encontrar lo siguiente:

extends KinematicBody2D

# class member variables go here, for example:
# var a = 2
# var b = "textvar"

func _ready():
	# Called every time the node is added to the scene.
	# Initialization here
	pass

#func _process(delta):
#	# Called every frame. Delta is time since last frame.
#	# Update game logic here.
#	pass

Todas las líneas con un signo «#» se consideran comentarios, no influyen en el juego. Además, también se añaden dos funciones:

  • _ready(): se usa para programar todo lo que pasa al momento de iniciar el nodo, sólo se ejecuta una vez. En ella tenemos que indicar el inicio de otras funciones necesarias.
  • _process(delta): es una función muy importante, todo lo que pongamos se ejecutará mientras el nodo este activo.

Si ponemos:

func _ready():
	print("Hola Mundo")

Se imprimirá en la consola una sola vez: «Hola Mundo», cuando iniciemos la escena.


Esto es un resumen de los lenguajes disponibles en Godot, en Indie Libre se traerán más tutoriales que expliquen sobre GDScript.


César León

Nací en el mes de mayo. En 2014 empecé a estudiar sobre el desarrollo de vídeojuegos, un conflicto de mi vida fue descargar software privado sin pagar licencias. Godot formó un puente entre mi y el Software Libre, probé GNU/Linux y termine aceptando el sentimiento ético de la FSF. Feliz de desarrollar juegos Indie con Software Libre :').