Hola mundo en Slick2D

Tutorial de slick2d

Una vez con un proyecto configurado en Eclipse o Netbeans con las librerías necesarias para usar Slick2D, se crea una clase Main, o como se le quiera llamar, que extienda de BasicGame:

import java.util.logging.Level;
import java.util.logging.Logger;
import org.newdawn.slick.AppGameContainer;
import org.newdawn.slick.BasicGame;
import org.newdawn.slick.GameContainer;
import org.newdawn.slick.Graphics;
import org.newdawn.slick.SlickException;

public class Main extends BasicGame
{
 public Main(String gamename)
 {
  super(gamename);
 }

 @Override
 public void init(GameContainer gc) throws SlickException {}

 @Override
 public void update(GameContainer gc, int i) throws SlickException {}

 @Override
 public void render(GameContainer gc, Graphics g) throws SlickException
 {
  g.drawString("Hola mundo!", 10, 10);
 }

 public static void main(String[] args)
 {
  try
  {
   AppGameContainer appgc;
   appgc = new AppGameContainer(new Main("Juego simple en Slick2D"));
   appgc.setDisplayMode(640, 480, false);
   appgc.start();
  }
  catch (SlickException ex)
  {
   Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
  }
 }
}

Si al ejecutar el programa aparece una ventana como ésta, hemos configurado correctamente Slick2D en nuestro IDE.

Hola Mundo en slick2d

Nota: la leyenda de frames por segundo aparece en la esquina superior izquierda, justo donde estamos posicionado el texto de “Hola mundo”, para activar o desactivar ésta característica se tiene el método setShowFPS(true|false) del AppGameContainer

 appgc.setShowFPS(false);

Estructura de un juego en Slick2D

Slick2D, como la mayoria de plataformas para desarrollar videojuegos, divide el programa en tres secciones básicas que son: init, update y render, y que se ejecutan en ese mismo orden. Init solo se ejecuta una vez al inicio del programa, update y render se ejecutan continuamente durante todo el juego.

En init se inicializan todas las variables y objetos que se requieran desde un comienzo: cargar las imágenes, preferencias del usuario, etc. En update se hacen los cálculos, ajustes, inteligencia, lectura del teclado; la lógica del juego va aquí adentro. En render se deben poner las funciones encargadas de mostrar los distintos elementos del juego en la pantalla.

Estados del juego en Slick2d
Estados de un juego simple en Slick2D

Para ver más a fondo la estructura del juego y las clases básicas, lee la siguiente entrada del tutorial: Clases básicas de Slick2D, clase Game, BasicGame, GameContainer y Graphics

One thought on “Hola mundo en Slick2D

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *