Commit Graph
23 Commits
Author SHA1 Message Date
UberElectron aa5cb103dd SDL_Rect reference fix.
Texture::GetTextureRect() returned reference of a temp copy.
2023-08-12 19:39:10 +02:00
UberElectron 74b8c36d82 SDL_Rect Ptrs and reference fixes. 2023-08-12 19:15:30 +02:00
UberElectron 279a09256e Move spdlog lib.
spdlog tenía un include especial, lo movemos para que sea más estándar.
2023-08-12 15:15:42 +02:00
UberElectron 7f4cab4059 Update libs versions and camera fixes.
Camera scale now works mostly fine.
Bump SDL2 to 2.28.2.
Bump Dear ImGui to 1.89.8.
Bump JSON lib to 3.10.2.
2023-08-08 14:30:06 +02:00
UberElectron 659b113318 Nuevo Render flow para los Drawables y mejoras.
Nuevo flujo de render para los drawables, que ahora tiene más sentido.
Investigado e implementado finalmente un sistema para no renderizar objetos no visibles.
Optimizaciones varias.
Constructor por defecto para Sprite, utilizando los assets por defecto.
2022-12-18 23:20:13 +01:00
UberElectron 08f566fda6 Cambios en Camera.
Ahora la cámara hereda de Transformable.
Preparando la "proyección" de Rects respecto a Camera.
Probablemente requiera crear la clase Window para ello.
2022-10-25 20:03:36 +02:00
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
UberElectron f2bf82e370 Migración del Renderer al nuevo sistema de Drawables.
El Renderer extrae los datos de los drawables, eliminando la clase DrawCall.
Los Drawables utilizan los nuevos Drawables. Aunque falta pulir la forma en que lo hacen.
2022-09-19 20:10:02 +02:00
UberElectron 6b87711424 Nuevo Drawable.
Cambiamos un poco la arquitectura del Drawable.
Parece que todo funciona sin necesidad de tocar nada.
2022-09-15 22:33:13 +02:00
UberElectron a0889e78f1 Reorganizamos algunos archivos.
Creamos la carpeta Interfaces para clases utilitarias comunes.
2022-09-14 20:50:39 +02:00
UberElectron 4ee1ccb47a Camera bugfix.
Ahora existe una cámara por defecto en el renderer.
Así, si no hay cámara asignada se utilizará esta.
2022-09-14 19:41:56 +02:00
UberElectron b89b031f6c El regreso tras mucho tiempo...
Sinceramente, no sé lo que puede haber aquí.
2022-06-07 22:13:53 +02:00
UberElectron 9098f16f81 Sistema de Renderizado de Texto (TTF).
Hemos implementado un sistema para el renderizado de textos mediante fuentes TTF. Para ello utilizamos la librería SDL_TTF.
Se ha creado una clase Wrapper (UE::Font) que gestiona una fuente. Está diseñado para poder tener un cache de fuentes de diferentes tamaños. Es posible que hagamos un refactor al AssetManager para convertir las texturas a un Wrapper (más que nada para limpiar el código del AsMng y llevarme la responsabilidad de las texturas a otro sitio.
2022-02-21 20:17:47 +01:00
UberElectron d19f4593d5 Event Handlers para Escenas y pruebas con Dear ImGui.
Se a añadido un nuevo método a las escenas que permite pasar eventos para procesarlos.
He realizado pruebas varias con Dear ImGui.
2022-02-14 22:10:11 +01:00
UberElectron 77d78db774 Cambios en el renderer para facilitar el uso de ImGui por ahí, fuera del propio renderer.
Implimentado un sistema de cámara y la consiguiente conversión entre WorldCoords y ScreenCoords.
2022-01-31 20:59:07 +01:00
UberElectron 92f743edf2 Nuevo sistema de escenas mediante el uso de un SceneBuilder polimófico. De esta forma sólo habrá una escena cargada en cada momento.
Actualización de las librerías Vendor Dear ImGui y SDL2 a sus últimas versiones. (Es posible que actualicemos ImGui al "Docking Branch" en un futuro).
Preparación inicial para el renderizado mediante ImGui (SDL+SDL_Renderer). (Hará falta un pequeño rediseño al renderer para hacer posible el renderizado de ImGui fuera de UE).
2022-01-26 21:14:27 +01:00
UberElectron a9180fde92 Rediseño del sistema de Assets para simplificar las texturas y los "SpriteSheets" que ya no son una clase.
Modificada la clase Sprite para adaptarse al nuevo funcionamiento de las texturas.
Extraidas las clases Drawable y Transformable de Sprite, para poder hacer más objetos con esas características.
Implementada una clase Time que calcula DeltaTime y limita los FPS. Al fin limpiamos el Main y eliminamos todo este código temporal.
Cambios al sistema de escenas, pero se acerca un refactor completo al sistema.
Hace bastante desde el último Commit. Ahí va todo.
GLHF!
2022-01-20 20:10:19 +01:00
UberElectron a565bcfad2 Primera versión del sistema de escenas (probablemente sea una aproximación bastante incorrecta. Además, no se han realizado apenas pruebas).
Sistema de Logging (¡Al fin!).
2021-12-07 23:38:07 +01:00
UberElectron e9861e43db Some Refactor, Redesign and comments.
Eliminamos la clase Game para mover la ejecución base al Main.
More Stuff.
2021-12-05 19:19:03 +01:00
UberElectron 5d92a945ab Late Night Codig Time (21/11/21) 2021-11-21 04:28:33 +01:00
UberElectron 3ec5e7329b Primera implementación Sprite + renderer changes 2021-11-12 18:54:19 +01:00
UberElectron 25dcfb03fc Solved memory leak in renderer.. 2021-11-08 23:32:22 +01:00
UberElectron 2f9b548835 Initial commit 2021-11-08 17:33:01 +00:00