Start-Game t00l
Proximamente!
- Este debate está vacío.
-
AutorEntradas
-
Superadministrador
Por ahora lo tuve que meter un cacho en el freezer porque andaba con parciales y un proyecto aparte que tenia que liquidar, pero en estos dias retome un cacho el asunto…
Por un lado estoy armando la interfaz web (al final me decidi por Django nomas pa poder afanar cosas de un proyecto medio heavy que toy haciendo en el lab00ro), mientras que en otros ratos al pedo le estuve metiendo bastante al tema del manejo de la interfaz con teclado/gamepad (ya esta en estado usable, aunque quedan corregir algunas cosas).
Un problema medio pesado que me encontre el otro dia es con el manejo de memoria para menues y listas muy largas (el framerate se va al piso con mas de 1000 items). El problema es de la interfaz (guarda una instancia de opcion de menu para cada item, por mas que no se esten mostrando en el momento) pero tengo medio pensado un sistema de carga y liberacion de datos que deberia solucionar este tema…
Por otro lado, un amigo estaba armando en los ratos al pedo un sistema de servidor y cliente de torrents en Django, y haciendo un par de pruebas vimos que se podria integrar perfectamente al t00l como metodo de actualizacion del programa y las DBs, dejando los servidores como ultima alternativa de descarga (lo cual sacaria bastante el problema del ancho de banda en un futuro 😀
SuperadministradorDemasiado tiempo sin meter un update, pero MUCHOS cambios:
(comento los mas grandes por ahora)
Como primera cosa, la descarga de ROMs ahora es mucho mas precisa. Cambie los scripts de busqueda y reemplace el browser que usaba para las navegaciones (que habia «pedido prestado» de mi laburo) por uno propio, que soporta cookies y otras boludeces del estilo.
Tambien hay muchos cambios a nivel de estructura del codigo de la interfaz. La interfaz que estaba usando es la mas completa que existe para Pyglet, pero aun asi es una suerte de un tech demo. Estoy reestructurando el codigo y cambiando como maneja los diferentes elementos de la interfaz para hacerlo mas extendible y eficiente. En este punto logre encontrar de donde viene un leak de memoria gigantezco con listas de varios miles de elementos (resulta que maneja todo en una especie de imagen gigantezca en la memoria), estoy reescribiendo el manejo de listas para que maneje un buffer con todos los items, y vaya generando y destruyendo los elementos de la lista dependiendo si son o no visibles.
Por otro lado, encontre una forma de manejar los diferentes emuladores de forma que el frontend sea lo mas extensible posible. Cada emulador va a tener un script (por ahora en Python, en un futuro probablemente tambien se permitan en XML) que contiene los procedimientos de descarga, instalacion, configuracion y ejecucion del mismo. Este script se ejecuta en un thread aparte, para no trancar la interfaz mientras se descarga un emulador, u obtener mas eficiencia al hacer un proceso complejo, por ejemplo.
Ni bien haya novedades seguire avisando, nos vemo!
-
AutorEntradas
- Debes estar registrado para responder a este debate.