Por Nacho Cabanes
En este apartado puedes encontrar:
Para no necesitar conocer demasiado los detalles internos de SDL y de su adaptación como parte del "Tao Framework", el esqueleto incluye varias clases auxiliares, como:
Para evitar parpadeos, las imágenes y los textos se dibujan en una pantalla oculta (un "doble buffer"), que se muestra cuando todos los elementos están preparados.
Algunas de las órdenes básicas existentes en esas tres clases, y que usaremos en este priemr acercamiento:
Para no necesitar usar Visual Studio, que es de gran tamaño y relativamente lento (incluso en su versión Express), se puede emplear como compilador Mono, que se puede descargar libremente de www.mono-project.com.
En un fuente sencillo, para compilar con Mono bastaría teclear "mcs fuente.cs"; como en este caso se trata de varios fuentes, de un fichero DLL, etc., se puede usar el fichero COMPILA.BAT. Si no hay problemas en la compilación, se puede usar EJECUTA.BAT para copiar el ejectuable a su carpeta y lanzarlo.
El resto de ficheros necesarios (DLL, tipos de letra, imágenes) se encuentran formando parte del fichero ZIP que contiene todo lo necesario para compilar y probar el juego. Lo correspondiente a esta primera entrega lo puedes encontrar aquí.
/** * Juego: Lógica de juego * * @see Hardware * @author 1-DAI IES San Vicente 2009/10 */ /* -------------------------------------------------- Parte de Death Pit - Remake Versiones hasta la fecha: Num. Fecha Por / Cambios --------------------------------------------------- 0.01 xx-Oct-2009 Nacho Cabanes Versión inicial: muestra una imagen ---------------------------------------------------- */ public class Juego { private static void Main() { // Variables que usaremos: una imagen y un tipo de letra ElemGrafico imagenPersonaje; Fuente fuente18; // Inicializo modo grafico 800x600 puntos, 24 bits de color Hardware.Inicializar(800, 600, 24); // Cargo imagenes y tipos de letra imagenPersonaje = new ElemGrafico("imagenes/personaje.png"); fuente18 = new Fuente("FreeSansBold.ttf", 18); // Dibujo el personaje y un texto en la pantalla oculta imagenPersonaje.MoverA(380,300); imagenPersonaje.DibujarOculta(); Hardware.EscribirTextoOculta( "Pulsa ESC para salir", 300, 500, 0xAA, 0xAA, 0xAA, fuente18); // Finalmente, muestro en pantalla Hardware.VisualizarOculta(); // Y espero a que se pulse ESC do { // No hacer nada, solo esperar } while (! Hardware.TeclaPulsada(Hardware.TECLA_ESC) ); } } /* fin de la clase Juego */