Curso programación de videojuegos con SDL – Colisiones

Una vez ya tenemos los enemigos moviéndose, el doble búfer implementado e incluso si queremos la pantalla completa pasemos a establecer algún objetivo en el juego. Para este ejemplo el objetivo será evitar que nuestro avión se choque con los aviones enemigos. Una vez se choquen terminaremos el juego. Aunque esto en un juego real no pasaría dado que es un ejemplo didáctico, es la […]

Leer más » 4 Comentarios

Curso programación de videojuegos con SDL – Mejorando aspectos gráficos

Habréis podido observar que los aviones parpadean al moverse por la pantalla. Esto se produce porque dibujamos directamente sobre la pantalla, es decir sobre lo que hemos llamado screen, de manera que dibujamos antes unos objetos y luego otros. Este problema es bien sencillo de solucionar con SDL gracias a la llamada técnica del doble búfer que nos ofrece. Mediante esta técnica dibujaremos sobre un […]

Leer más » 2 Comentarios

Curso programación de videojuegos con SDL – Incluyendo enemigos

¿Qué sería de un videojuego de este tipo sin enemigos? La verdad es que es difícil de imaginar por lo que aunque de una manera no demasiado cuidada vamos a incluirlos. Sabiendo ya incluir imágenes y moverlas, la operación es sencilla: Creamos una nueva estructura de datos para guardar la posición de los enemigos más cómodamente: struct posicion{ int x; int y; }; El correspondiente […]

Leer más » 8 Comentarios

Controlar teclas especiales con C (flechas, ENTER, TAB, ESC) en entornos Windows

Cuando programamos en C, nos enseñan desde primera hora a usar las funciones típicas de entrada/salida presentes en stdio.h: printf(), scanf(), getchar(), gets()… pero normalmente se obvia el uso de funciones algo más avanzadas para detectar pulsaciones de teclas o interactuar de forma más directa con la terminal. Hoy os explicaré para qué sirven dos funciones: getch() y getche(), disponibles en conio.h (como ya advierto […]

Leer más » 7 Comentarios

Curso programación de videojuegos con SDL – Moviendo una imagen por la pantalla

Tras cargar la imagen y quedarse estática en la pantalla os darán ganas de moverla. Aprendamos a como moverla por la pantalla con las flechas del teclado. Aprovecharemos para cambiar la forma de salirnos de la aplicación, ahora lo podremos hacer mediante la tecla ESC o haciendo clic en el cierre de la ventana. Veamos como en el caso anterior lo que debemos incluir: Declaramos […]

Leer más » 5 Comentarios

Curso programación de videojuegos con SDL – Cargando imágenes con SDL

Ya hemos visto cómo cargar una ventana simple con SDL y ponerle título. No está mal para comenzar, pero estaréis deseando hacer algo más. Lo siguiente que haremos será cargar una imagen en pantalla operación que se repite multitud de veces en cualquier juego a la hora de cargar tanto fondos, como personajes. Para carga una imagen haremos lo siguiente: Declaramos un puntero a una […]

Leer más » 13 Comentarios

Curso programación de videojuegos con SDL – ¡Hola mundo!

Comenzaremos con un ejemplo mínimo de SDL dónde abriremos una ventana con el título “Hola Mundo”. Para ello además del código en C prepararemos el Makefile para compilarlo. Podríamos haber usado un entorno de desarrollo integrado como Anjuta por ejemplo, pero ya que se trata de una iniciación a SDL lo mejor creo que es trabajar directamente sobre el compilador y los Makefile. Makefile Comenzaremos […]

Leer más » 11 Comentarios

Curso programación de videojuegos con SDL – Instalación y configuración

Una vez introducidos en qué es SDL pasemos a la parte práctica. Comencemos instalando los componentes necesarios. Si usas Ubuntu, Debian o cualquier otra distribución que use Synaptic o APT instalaremos los siguientes paquetes: libsdl1.2debian: paquete de librerías SDL libsdl1.2-dev: para desarrollo. libsdl-image1.2 libsdl-image1.2-dev libsdl-mixer1.2 libsdl-mixer1.2-dev libsdl-ttf1.2 libsdl-ttf1.2-dev libsdl-net1.2 libsdl-net1.2-dev Con Synaptic Nos dirigimos a Synaptic (Sistema -> Administración -> Gestor de paquetes Synaptic) y […]

Leer más » 3 Comentarios

Curso programación de videojuegos con SDL – Allegro, otra librería para el desarrollo de videojuegos

Como en (casi) todos los demás aspectos del software libre, existen más alternativas para este mismo propósito. La más famosa de todas es Allegro y tras SDL es la más potente. Algunos consideran OpenGL como una alternativa, sin embargo creo que no debería considerarse así  puesto que se puede integrar perfectamente dentro de un proyecto en SDL o en Allegro para dotar de gráficos tridimensionales […]

Leer más » 3 Comentarios

Curso programación de videojuegos con SDL – ¿Qué es SDL?

En la Wikipedia encontramos que: ”LibSDL es un conjunto de librerías desarrolladas con el lenguaje C que proporcionan funciones básicas para realizar operaciones de dibujado 2D, gestión de efectos de sonido y música, y carga y gestión de imágenes. SDL es una abreviatura en inglés de Simple DirectMedia Layer.” Resaltar como podéis ver que se trata de un conjunto de librerías para C encargada de […]

Leer más » 5 Comentarios

Curso programación de videojuegos con SDL – Introducción

Con esta entrada presento el próximo curso que Linux Hispano os va a presentar: “Programación de videojuegos con SDL“. Constará de una serie de entregas que irán  apareciendo periódicamente en forma de entradas, al igual que en el caso de los cursos que ya están publicados: C# con Mono Java PHP orientado a objetos Aún recuerdo la primera vez que cogí entre mis manos el […]

Leer más » 6 Comentarios

Diferencia entre require e include en PHP

Cuando aprendes a programar en PHP, dos de las primeras funciones que usas son include y require. Prácticamente sirven para lo mismo, insertar código de un tercer fichero en el fichero actual (en otros lenguajes de programación hay funciones o construcciones similares). Pero, ¿cuál es la diferencia entre ellas? Antes de la versión 4.0.2 de PHP (que prácticamente ninguno usaréis, o al menos deberéis usar), la […]

Leer más » 3 Comentarios

Curso PHP orientado a objetos – Introducción

Aunque PHP nació como un lenguaje orientado a la programación procedimental, con el tiempo se fue adaptando a las necesidades de los desarrolladores y comenzó a añadir características propias de los lenguajes orientados a objetos. Esta es la primera entrada de un mini curso de varias entregas en el que trataremos de explicaros cómo usar los mecanismos propios de la orientación a objetos en este […]

Leer más » 2 Comentarios

Los lenguajes de programación más populares en junio de 2011

Como sabéis, sobre todo los más seguidores, cada cierto tiempo siempre me gusta realizar un análisis de los lenguajes de programación más populares para conocer cómo se mueve el mercado con respecto al mes del año pasado. Recordad que todos los meses Tiobe realiza un análisis de los lenguajes más populares según los resultados en los motores de búsquedas. En el primer puesto está el […]

Leer más » 19 Comentarios

Ordenar arrays asociativos en PHP: diferencia entre ksort y asort

Los arrays asociativos son estructuras de datos que PHP nos ofrece para poder almacenar datos asociados a una serie de claves, en lugar de a un índice numérico. En otros lenguajes, se les denomina tablas hash. La ordenación de dichos arrays, es una de las operaciones básicas de cara a un correcto manejo de los mismos. Para poder llevar a cabo esa operación, PHP nos […]

Leer más » 2 Comentarios