Godot: veleta interactiva
«Y observó todo lo que había creado y vio que funcionaba. Y había viento y una veleta, y la veleta giraba por su fuerza. Y el controlito se sintió útil y se regocijó en su humilde trabajo.» — Yo
Hace meses que conseguí un control de juegos para entretenerme durante la pandemia, pero en el Sistema Guix no hay muchos juegos empacados y pocos de los que hay empacados son compatibles con controles. Recuerdo tres: SuperTuxKart, Starfighter y Mr. Rescue. Todos entretenidos, pero ya hace rato perdieron la gracia por varias razones.
Voy a aprender a programar el Godot Engine para sacarle un poquito de provecho al control. Mi primer ejercicio fue hacer una veleta (ver video).
El programa que mueve la veleta es muy sencillo:
extends Sprite # CONSTANTS const ANGULAR_SPEED = 3 # radians const MIN_LEVEL = 0 # min. wind force const MAX_LEVEL = 12 # max. wind force const WIND_INCREMENT = 0.1 # VARIABLES var wind_level = MIN_LEVEL # interval [0, 12] # FUNCTIONS func _process(delta): # Let user increase wind level. if Input.is_action_pressed("ui_right") and wind_level < MAX_LEVEL: wind_level += WIND_INCREMENT # Let user decrease wind level. if Input.is_action_pressed("ui_left") and wind_level > MIN_LEVEL: wind_level -= WIND_INCREMENT rotation += delta * ANGULAR_SPEED * wind_level
El resultado no es un juego, pero programar la ilusión de movimiento sí. Godot Engine se ve muy bien.
Temas relacionados: