Programación de videojuegos en Linux/Introducción
Objetivos
[editar]El objetivo de este libro es sencillo: Conseguir que cualquier usuario interesado en la creación de videojuegos en GNU/Linux pueda crear videojuegos sencillos en 2D como paso previo al desarrollo de videojuegos en 3D usando motores gráficos avanzados.
Para los novatos
[editar]Los usuarios con pocos conocimientos de programación deberían seguir el orden del libro y comenzar por los ejemplos escritos en Python, puesto que es un lenguaje más sencillo de aprender rápidamente que C. Empezando con Python nos olvidaremos de compilaciones, enlace de librerías extrañas, punteros, y demás características de C que pueden confundir a los programadores noveles, retrasando el cumplimiento del objetivo principal: El desarrollo de videojuegos sencillos. Si quieres aprender Python mientras aprendes a programar tus juegos aconsejo tener a mano el manual de programación en Python de Wikilibros.
Los programadores de Python experimentados pero que quieran introducirse en el mundo del desarrollo de videojuegos también podrán encontrar interesantes algunos ejemplos aquí expuestos.
Para los usuarios avanzados
[editar]Si eres programador de C/C++ y prefieres adentrarte en el mundillo con tu lenguaje preferido, deberías saltarte los ejemplos en Python y pasar directamente a los ejemplos de C. Para los usuarios no muy avanzados pero que quieran aprender lenguaje C mientras aprenden a programar sus videojuegos les aconsejo que tengan a mano el manual de programación de C de la propia Wikilibros.
Requisitos
[editar]En este libro partiremos de la suposición de que se cuentan con ciertos conocimientos en programación, al menos en los lenguajes C y Python. Procuraremos no entrar en características avanzadas para no confundir a los usuarios con pocos conocimientos, pero lo ideal sería contar con conocimientos básicos en ambos lenguajes. En caso contrario el usuario puede ayudarse con los manuales anteriormente citados.
Como segundo requisito necesitaremos contar con alguna distribución Linux y con a librería gráfica SDL. SDL básicamente nos ofrece lo necesario para dibujar gráficos en 2D sobre la pantalla, monitorizar la actividad de periféricos de entrada (teclado, ratón, joysticks, CDs), manejar archivos de audio y, en definitiva, todo lo necesario para contruir nuestro proyecto.
Como requisito extra para los ejemplos de Python, necesitaremos tener instalada la librería PyGame incluída en la mayoría de distribuciones Linux mediante los repositorios.
Herramientas recomendadas
[editar]Para escribir el código fuente de nuestro proyecto podremos usar cualquier editor de texto plano, preferentemente uno que disponga de resaltado de sintaxis. Nos valdrían por ejemplo, editores como Emacs, Vim, Gedit, Kate o Geany.
Para los ejemplos de C tambien necesitaremos de un compilador, que por comodidad podría ser GCC incluido de serie en cualquier distribución Linux.