Estructura básica de un proyecto en Love2D

main.lua


Todo proyecto de Love2D debe tener en su raíz un main.lua y éste será lo primero que el programa ejecutará siempre.

Funciones Callbacks:

function love.load()

Esta función es llamada una sola vez, cuando se inicia el juego y es por lo general donde se cargan los recursos, se inician las variables y se establece una configuración específica. Todo esto también se puede hacer en cualquier otro sitio, pero haciéndolo aquí significa que se hace una sola vez, ahorrando una gran cantidad de recursos del sistema.

function love.update(dt)

Esta función es llamada constantemente y probablemente será donde se hagan la mayoría de los cálculos. "dt" significa delta time (tiempo delta) y es la cantidad de segundos desde la última vez que se llamó a esta función (que suele ser un valor pequeño como 0,025714)

function love.draw()

Mediante love.draw() se dibuja cualquier cosa en pantalla y si se llama a love.graphics.draw() fuera de esta función, no tendría ningún efecto. Esta función también es llamada constantemente, así que ten en cuenta que si cambias el tipo de letra/color/modo/etc. al final de la función, tendrá un efecto en las cosas del principio de la función en el siguiente frame.

Analicemos el proyecto de ejemplo:


Dentro de nuestra función love.load cargamos como variable "imagen" y "sonido" y luego ejecutamos el sonido con love.audio.play(), si esto lo colocaramos en el update, se reproduciría en cada frame y no se escucharía correctamente.

Nota: "end" indica que la función que hemos "llamado" acaba ahí.

Luego en el love.draw dibujamos los recursos que hemos cargado en la posición que indicamos.

Añadiendo love.update(dt)

Vamos a testear esta función añadiendo lo siguiente:

Declararemos una variable "y = 0" dentro de la función love.load().
Cambiaremos dentro de love.draw() el número 180 del "Hello world" por "y" que es la variable que declaramos en 0.
Añadimos la función love.update(dt) y dentro escribimos "y = y + 1" recuerda escribir al final "end"

Nos debe quedar así:


Guardamos con Ctrl + S y ejecutamos el código, ahora el texto Hello World debería aparecer en movimiento hacia abajo.

No hay comentarios:

Publicar un comentario

Como hacer un Snake en Love2D

Archivos Comenzamos creando los archivos main.lua y conf.lua, en el conf.lua solo añadimos lo siguiente: function love.conf(t)   t.win...