UberElectron 724807e9f2 Assets & AssetManager documentation and security.
Ahora en las tx, el SDL_Rect index 0 es la tx completa por defecto.
Revisamos los Assets y el AssetManager.
Añadimos seguridad en los métodos y controlamos excepciones.
Reescribimos comentarios y recolocamos código.
2022-09-25 19:07:00 +02:00
2022-09-14 19:41:56 +02:00
2022-08-09 18:26:57 +02:00
2022-08-11 12:57:40 +02:00

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.
S
Description
Muchos años de trabajo para esto.... Poco a poco. Algún día, funcionará y podremos considerarlo completo.
Readme
13 MiB
Languages
C++ 96.5%
Lua 3.1%
C 0.3%