Commit Graph

  • aa5cb103dd SDL_Rect reference fix. Texture::GetTextureRect() returned reference of a temp copy. main UberElectron 2023-08-12 19:39:10 +02:00
  • 74b8c36d82 SDL_Rect Ptrs and reference fixes. UberElectron 2023-08-12 19:15:30 +02:00
  • 279a09256e Move spdlog lib. spdlog tenía un include especial, lo movemos para que sea más estándar. UberElectron 2023-08-12 15:15:42 +02:00
  • 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. UberElectron 2023-08-08 14:30:06 +02:00
  • 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. drawable_rework UberElectron 2022-12-18 23:20:13 +01:00
  • 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. UberElectron 2022-10-25 20:03:36 +02:00
  • 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. UberElectron 2022-09-25 19:07:00 +02:00
  • 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. UberElectron 2022-09-19 20:10:02 +02:00
  • 6b87711424 Nuevo Drawable. Cambiamos un poco la arquitectura del Drawable. Parece que todo funciona sin necesidad de tocar nada. UberElectron 2022-09-15 22:33:13 +02:00
  • a0889e78f1 Reorganizamos algunos archivos. Creamos la carpeta Interfaces para clases utilitarias comunes. UberElectron 2022-09-14 20:50:39 +02:00
  • 4ee1ccb47a Camera bugfix. Ahora existe una cámara por defecto en el renderer. Así, si no hay cámara asignada se utilizará esta. UberElectron 2022-09-14 19:41:56 +02:00
  • d141b77eaa Optimizaciones y mejoras de Premake. Cambiar un par de cosas y hacer abstractos los postbuildcommands. linux_support Daniel-Garmig 2022-08-29 19:31:10 +02:00
  • 132f24720e Some Rendering Stuff. Se ha añadido un método para cambiar el color de clear. Se ha abstraido la cámara del renderer para más versatilidad a futuro. Nota: La implementación de la cámara no es nada segura. Tocará revisarlo Daniel-Garmig 2022-08-29 17:54:34 +02:00
  • 692812a710 Unificar Encoding. Revisado que todos los archivos son UTF-8 y espacios como indentación. Daniel-Garmig 2022-08-11 16:47:50 +02:00
  • 006d223f57 Nueva Clase Engine. Se ha eliminado la antigua clase Game y movido a la nueva clase Engine. La clase Engine, encargada de iniciar las cosas, ahora está en el Engine Además, tiene seguridad en la inicialización. Ya no se inicia el juego si hay error al cargar libs o sistemas. Daniel-Garmig 2022-08-11 15:16:23 +02:00
  • b2d6a31275 Nuevo sistema de Escenas. Nos quitamos del medio la cosa rara del SceneBuilder. Simplificamos la estructura y la hacemos más o menos segura. Daniel-Garmig 2022-08-11 12:57:40 +02:00
  • ce1886d3db Bump Dear ImGui version to 1.88. Daniel-Garmig 2022-08-10 00:13:14 +02:00
  • 614ab37ca5 Soporte Linux. Tenemos soporte para linux. Sólo faltaba este pequeño detalle, lo demás parece funcionar. Daniel-Garmig 2022-08-09 19:00:12 +02:00
  • ae17a6bb33 El soporte para Linux está cerca... Daniel-Garmig 2022-08-09 18:26:57 +02:00
  • b89b031f6c El regreso tras mucho tiempo... Sinceramente, no sé lo que puede haber aquí. UberElectron 2022-06-07 22:13:53 +02:00
  • 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. UberElectron 2022-02-21 20:17:47 +01:00
  • 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. UberElectron 2022-02-14 22:10:11 +01:00
  • 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. UberElectron 2022-01-31 20:59:07 +01:00
  • 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). UberElectron 2022-01-26 21:14:27 +01:00
  • 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! UberElectron 2022-01-20 20:10:19 +01:00
  • 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!). UberElectron 2021-12-07 23:38:07 +01:00
  • e9861e43db Some Refactor, Redesign and comments. UberElectron 2021-12-05 19:19:03 +01:00
  • 5d92a945ab Late Night Codig Time (21/11/21) UberElectron 2021-11-21 04:28:33 +01:00
  • 3ec5e7329b Primera implementación Sprite + renderer changes UberElectron 2021-11-12 18:54:19 +01:00
  • 25dcfb03fc Solved memory leak in renderer.. UberElectron 2021-11-08 23:32:22 +01:00
  • ce7c79dade Small changes in renderer design. BuildTools 2021-11-08 23:04:17 +01:00
  • dc1e910d23 Init repository BuildTools 2021-11-08 18:37:59 +01:00
  • 2f9b548835 Initial commit UberElectron 2021-11-08 17:33:01 +00:00