lunes, 10 de diciembre de 2007

captura de perifericos

Finalmente, he terminado de implementarle control de periféricos al gamegine framework, aunque el único que he probado, hasta el momento, es el del mouse. Mañana estaré probando con el teclado y probablemente la próxima semana podamos hacer algún demo que controle un joystick.

La idea principal dentro del gamegine es la modularidad (algunos le dan otro nombre). El otro día venía haciendo cuentas y descubrí que dentro de poco cumpliré diez años como desarrollador de software. Así que sé de lo que les hablo cuando les digo que el éxito de un programa depende, en gran medida, de su habilidad para adaptarse a los cambios. Pero, ¿cuales cambios?, me dirán. En realidad pueden ser cambios estratégicos, como la implementación de una nueva herramienta, o el mantenimiento de la misma, así como poder quitar y poner elementos sin que la aplicación se venga abajo. Así, es posible tener el engine trabajando sin la necesidad de cargar una librería de física, por ejemplo, sonido u otra cosa; y luego echarla a andar simplemente con agregarla al archivo de configuración.

El sistema de control de periféricos que he diseñado es un muy buen ejemplo de lo que les digo. Por ejemplo, para poder escuchar cambios en el movimiento del mouse, lo que necesito hacer es crear una clase que herede de una interfaz de nombre "GameInputMouseListener" y sobrecagar el método asociado al evento que me interese escuchar. Esta clase, de forma interna y, portanto, transparente, se inscribe al servicio de escucha del periférico y se da de baja cuando ya no sea necesario. También, depende de la configuración del framework el determinar qué librería se ha de encargar de llevar a cabo esta tarea. Para tí, lo único que tuviste porqué preocuparte es por sobrecargar un método.

Vamos a documentar muy bien estas características en otro post, mientras tanto, visiten el sitio oficial del gamegine para ir conocientdo como va el asunto.

Por mi parte, estaré posteando más seguido para comentarles el avance del desarrollo del framework, así como plticando de nuevos planes, como el desarrollo de un juego que ha de servir de tutorial para iniciarse en el uso de estas librerías.

.

No hay comentarios.: