title: Chipmunk Game Dynamics date: 2009-03-07 19:34 ---

Chipmunk es una librería en C para simular espacios físicos en dos dimensiones con gravedad, colisiones, rebotes y más cosas. Es muy rápida en sus cálculos y la última versión es bastante estable, con lo que se convierte en una librería a tener en cuenta para el desarrollo de videjuegos. Se encuentra liberada bajo licencia MIT.

En la web de Chipmunk pueden verse vídeos que muestran lo que se puede hacer con esta librería, aunque el más sorpredente es sin duda el de Sketches.

Para instalar Chipmunk tenemos que descargar la última versión y descomprimirla en nuestro sistema. El fichero incluye, además de la última versión de la librería, unas demos que nos sirven como ejemplos para comprender el funcionamiento.

Una vez descargado y descomprimido, vamos al directorio src y ejecutamos

cmake .

para crear los ficheros Makefile necesarios para compilar e instalar la librería. Como Chipmunk está escrito en C99 tendremos que hacer una pequeña modificación en los ficheros generados por cmake antes de poder compilar. En el fichero CMakeCache.txt buscaremos la línea en la que se declara la variable CMAKE_C_FLAGS:STRING, que es donde se indican las opciones que se le pasarán a gcc y le asignamos -std=c99 -D_GNU_SOURCE para indicarle que compile siguiendo el estándar C99 e incluyendo las extensiones GNU.

Ahora ya podemos compilar con make e instalar con make install de la forma habitual. Veremos que despues de la instalación las librerías se han quedado en /usr/local/lib y los ficheros de cabecera en /usr/local/include, pero si usamos un sistema Debian o basado en Debian es preferible tenerlos en /usr/lib y en /usr/include. En cmake_install.cmake, si sustituimos:

SET(CMAKE_INSTALL_PREFIX "/usr/local")

por

SET(CMAKE_INSTALL_PREFIX "/usr")

tendremos el problema resuelto y podremos empezar a usar esta magnífica librería en nuestros programas.

E incluso podremos usarla en nuestros programas Lisp ;-)