4ee1ccb47ab546c06474f346cecb9f70d9b415f8
Ahora existe una cámara por defecto en el renderer. Así, si no hay cámara asignada se utilizará esta.
UberGame1-Test
Repositorio principal de UberEngine. Sin mucho más.
To-Do:
General / Arquitectura
- Reestructuración completa de la clase Game y del "Entry Point".
- Convertir la clase Game a Static completamente.
- Unificar todas las inicialziaciones de librerias en una función en UberEngine.
- ¿¡Dividir entre la inicialización del propio juego/app y la de los sistemas del motor!?
- Limpiar dependencias entre clases (no es necesario que las texturas o el AssetManager almacenen un ptr al renderer y cosas así).
- Revisar la inclusión de librerias en los headers.
- ¡DOCUMENTACIÓN DE LA ARQUITECTURA! Quizás comentar un poco lo que hace o se supone que hace cada método. O si alguno es muy complejo, comentar el funcionamiento.
- Crear un conjunto de tipos (typedef) de UberEngine para encapsular los vectores de GLM. (Son muy largos: glm::vec<4, int, glm::highpacked> -> UE_Color ó UE_Vec4).
- Algún día, tocara revisar los cientos de Warning que hay...
Renderer:
- Reestructurar la arquitectura de cola de renderizado del Renderer (El sistema de DrawCalls tiene sus problemillas...).
- Revisar Método IsObjectVisible (estoy mezclando vectores de cosas diferentes).
- Añadir un sistema de zoom/tamaño para la cámara.
Drawables:
- ¿Mover isActive al Drawable e implementarlo a nivel global (en el renderer)?
- Métodos para la conversión de coord World-Screen / Screen-World.
Fonts / Text rendering / TextBox
- Las fuentes no siguen el modelo estandar de Assets. El Asset contiene directamente el objeto, no un documento de datos del objeto.
- Revisar el sistema de fuentes de assetManager.
- No se cierran (TTF_CloseFont) las fuentes al salir.
- Revisar el correcto funcionamiento de los métodos de TextBox.
- Investigar formas de cambiar el tamaño al texto (TextBoxs) sin tener que modificar la fuente.
Memory Leaks:
- AssetManager: Al eliminar una textura, no limpiamos el conjunto de SDL_Rects asociado.
- AssetManager: Creo que también hay que limpiar las fonts cargadas....
JSON / AssetManager
- Crear un sistema sencillo (un método o algo común para todas las veces que sea necesario) para añadir seguridad al parse y uso de los JSON. De tal forma que se devuelva el error por consola pero no salten exepciones ni mierdas.
Sistema de Escenas.
- Revisar los métodos para carga/descarga y de cambio de escenas. Creo que se pueden estructurar mejor.
Description
Muchos años de trabajo para esto.... Poco a poco.
Algún día, funcionará y podremos considerarlo completo.
13 MiB
Languages
C++
96.5%
Lua
3.1%
C
0.3%