Programación juegos SDL

Arnau Sanchez arnau en ehas.org
Mie Sep 20 17:45:53 CEST 2006


Jose Luis Dominguez NONLILLY escribió:

 > He visto por ahí, unos cuantos juegos desarrollados con pygame, y parecen
 > bastante básicos. ¿Que opináis?

La modesta calidad de los juegos que hay en la web de Pygame se debe a que la 
mayoría están hechos por programadores para pasar el rato (sólo hay que ver los 
gráficos...), sin mayores ambiciones, no a las limitaciones de la librería en 
si. Aunque no es en absoluto perfecta, y tiene una documentación demasiado 
escueta, me parece algo perfectamente usable para proyectos más o menos modestos.

> ¿Pensáis que python, es un lenguaje idóneo para programar juegos?

Depende. ¿Qué juego tienes en mente? Si vas a hacer uno 2D te diría casi sin 
dudar que sí, siempre que cuides cómo haces las cosas y mantengas una mínima 
optimización (¿pero qué juego, en cualquier lenguaje, no la necesita?). Al 
final, si haces bien tu parte, el cuello de botella del juego debería estar en 
la librería gráfica, que a fin de cuentas estará programada en C.

Otro tema sería un juego 3D complejo. Hay mucha cosa hecha con pyopenGL, pyode, 
etc, pero no sé qué rendimiento tendría un juego tipo Quake hecho con esas 
librerías. En cualquier caso, Python (y cualquier otro lenguaje de scripting) 
sigue teniendo su lugar para el control de escenas, eventos, personajes, etc, 
llámale AI (inteligencia artificial) si quieres (y si te lo curras lo suficiente 
;-))

También se puede usar Python para el "glue code", o sea, para unir las 
diferentes partes (con lo que estarás haciendo "extending") de tu juego. No 
obstante, las compañías de videojuegos suelen optar por lo contrario, el 
"embedding"; hay que decir que en este ámbito tienen más aceptación otros 
lenguajes (especialmente Lua), ya que este proceso es más sencillo que en Python.

Mi primera noticia sobre Python fue precisamente al leer un documento de 
Humongous Entertainment que analizaba el scripting en juegos, y en el que 
finalmente se decantaba por Python:

http://www.gamasutra.com/features/20020821/dawson_pfv.htm

> Si finamente me decantase por usar C/C++ me podríais recomendar alguna 
> lista  de C/C++ con el buen ambiente de esta ;). 

No te puedo decir, en www.gamasutra.com tienes un buen puñado de información, 
aunque en tiempos estaba bastante desordenada, no sé cómo andará ahora.

saludos
arnau




Más información sobre la lista de distribución Python-es