pygame is
Python
Simple DirectMedia Layer
 
 
pygame.org is
Site Swing
pyBta_0.1

pyBta_0.1 - 0.3

Jesús Hernández Paredes (jesushernandezparedes)

Tags:

Description

pyBta 0.2 PyBta es mi patio de recreo personal, donde aprendo a programar pequeñas aplicaciones y mini juegos de manera propia y bastante artesanal. PyBta no es una herramienta al uso, y es más bien, una biblioteca que me permite explorar y curiosear sobre las cosas que no entiendo y me apetece aprender. Por eso no pretende ser un competidor para otras bibliotecas existentes y es, más bien, un aporte de alguien que simplemente quiere dar a luz su idea.

Changes

Y aquí vuelvo con pyBta, esta vez en su versión 0.3 (Me va resultando graciosa la idea) En esta versión he decidido concentrarme mucho más en el sistema de eventos que quería implementar en la biblioteca, debido a que el anterior se emborronaba a la hora de querer ir añadiendo nuevos eventos. Para esta idea me he concentrado bastante en aprender varias cosas sobre el manejo de hilos, como funcionan estos en python y como aplicarlos de manera exitosa dentro de pyBta. El primero de estos hilos es el constructor de eventos, el cual se encarga en todo momento de leer y construir una lista de eventos que la biblioteca pueda entender. Después esta lista es invocada por el segundo hilo, llamado, el disparador, que se encarga de leer la lista y enviar cada evento a su manejador correspondiente. Estos manejadores también trabajan de manera independiente y de encontrar una respuesta correcta de algún evento recibido, se encargarán de ejecutarla en otro hilo paralelo. Con todo esto he conseguido desacoplar muchas de las tareas que pyBta debía realizar y también he logrado un sistema de eventos que puede albergar incluso más de lo que yo me esperaba. El modulo de controles también lo he tocado bastante, adaptándolo al nuevo modulo de eventos. También he cambiado bastante el objeto dialogo y a nacido el control formulario. Dentro de este modulo he construido un par de objetos globales. El primero es el objeto foco, el cual se encarga de manera global a todos los controles, de saber cual es el control activo en cada momento. El segundo es el objeto pintor, el cual es el encargado de limpiar la pantalla y dibujar sobre ella los controles necesarios. Otra de guerras abiertas para esta versión a sido empezar a meterme, más seriamente, con el modulo de escenas. Este módulo a sufrido un montón de cambios. Ahora este sistema contiene el objeto gestorDeEscenas. Este objeto global es capaz de gestionar las escenas de un juego de manera mucho más sencilla, permitiendo almacenar, poner en marcha, borrar o eliminar escenas desde cualquier punto del programa sin que las escenas tengan que conocerse entre si. El modulo, en tiempo de ejecución, se sustenta mediante el objeto centralita y el objeto dibujante. Estos objetos funcionan en hilos diferentes y se encargan de desacoplar las tareas de dibujado y actualización lógica de una escena. Con esta idea he conseguido aportar mucha más velocidad a este módulo (Una prueba esta en el ejemplo rambito en acción, el cual soporta muchas mas animaciones en pantalla sin dar la sensación de caída en el fps. Otro de los objetos nuevos para este modulo es el objeto decorado, que se encarga de sustentar el fondo de las escenas de manera sencilla. Tengo pensado habilitar varios tipos de decorados, pero por ahora solo está disponible el BtaDecoradoSimpleImagen. Este objeto ya esta preparado para sustentar el scroll dentro de una escena. También he portado todos los ejemplos de pyBta 0.1 a esta versión y he mejorado bastante los ejemplos ya existentes. Por ejemplo Rambito en accion ya soporta una escena para el menú y otra para el juego y también muestra como unir de manera exitosa escenas y controles para generar los menús de tus juegos de forma simple y elegante. También empiezan a nacer en esta versión el objeto teclado y el objeto cursor, que sirven para leer el estado de estos dos controladores de manera directa. En cosas malas esta el caso de no haber activado para esta versión de pyBta una nueva versión de BtaLoop, pero espero que para la próxima tenga resuelto este problema pues este pequeño programa entra dentro de la idea de biblioteca que yo quería crear. Otros errores creo que está en el objeto encargado de dibujar las escenas el cual se queda colgado de vez en cuando y otro conocido en el sistema de profundidad, para los controles, el cual se vuelve loco si existen demasiados controles en pantalla. Para esta versión no he actualizado la documentación para nada, por lo cual esta se encuentra muy poco actualizada. Se debe tener en cuenta que esta versión a sido programada y testeada bajo un sistema Ubuntu y no se que tal se portara en otros ordenadores o sistemas operativos.

Links

Home Page: http://www.facebook.com/pages/Proyecto-pybta/287018534757307
Source: https://www.safecreative.org/work/1305195125248-pybta0-3

Screenshot


click to view original size

Releases

pyBta_0.1 - 0.3 - May 19, 2013
pyBta_0.1 - 0.2 - Jan 26, 2013
pyBta_0.1 - 0.1 - Apr 2, 2012

Pygame.org account Comments

If you wish to leave a comment with your pygame.org account, please sign in first.

No user comments have been submitted.
spotlight

 
our projects
pygame.org welcomes all python game, art, music, sound, video and multimedia projects. If they use pygame or not.
 
recent releases
May 19, 2013

May 18, 2013


May 17, 2013

May 16, 2013

May 15, 2013


May 11, 2013

May 8, 2013

Apr 26, 2013

Apr 24, 2013

Apr 23, 2013

... more!
 
for pygame related questions, comments, and suggestions, please see help (lists, irc)