Commit Graph
37 Commits
Author SHA1 Message Date
tobid7 50a45f24fa More timings 2026-09-06 16:16:52 +02:00
tobid7 9ba389004e UI7 is BACK!
took me about a full week to get something to render again withour shared_ptrs
as of now this is very unstable, untested and lacking a lot of features due to lithium is lacking the base for that
Added JetBrainsMono font as debug font for the metrics
2026-09-06 16:16:52 +02:00
tobid7 f6093903b7 Load the font async for now 2026-09-06 16:16:50 +02:00
tobid7 6658df2dd5 n3ds-boost 2026-09-06 16:16:49 +02:00
tobid7 dc5dd231d0 SDF & MONOSPACE FONT RENDERING 2026-09-06 16:16:49 +02:00
tobid7 29c2873517 Upload pools once per Gfx::Draw and FIX DX9 2026-09-06 16:16:48 +02:00
tobid7 480d406652 reset pools on newframe 2026-09-06 16:16:47 +02:00
tobid7 90ff3e93bc move global pools into gfx driver
prevents double copy problems
saves memory
(needs to be optimized...)
2026-09-06 16:16:47 +02:00
tobid7 7693146cb2 remove poc func 2026-09-06 16:16:42 +02:00
tobid7 3f4a590edf Add support for rotated gradients 2026-09-06 16:16:41 +02:00
tobid7 78bf51b402 Add stick and trigger input support 2026-09-06 16:16:41 +02:00
tobid7 4560a2d85e Add NX Hid Driver Template
- Add WIP HidNX Driver (clangd not working with devkitpro for switch on windows)
- Add default-release as default search path for compile_commands.json
- remove mingw preset (casue its exactly the default target)
- Move Mouse pos cycle into HidDriver::Update
- Test around with HidGlfw on Nintendo switch
2026-09-06 16:16:39 +02:00
tobid7 b7ec0b0106 Add proper Gamepad support (WIP) 2026-09-06 16:16:39 +02:00
tobid7 aec3e8069d Add Input functionality to Ultra
- Add point InSpace check to PD::Li::Math
- Add Universal AlignmentCenter flag for Horizontal and and Vertical Alignment
-  Add Fallbackfont to Layout (if you dont want to set font per object)
- Add Button Object WIP
- Rename OnHover to OnFocus and add OnUnfocus
- Move font and FontScale to ElementBase (for fallback logic etc)
- Add UpdateInput func to ElementBase
- Corectly Set fontScale in Text Rendering
- Update ecample
2026-09-06 16:16:38 +02:00
tobid7 0177f6358d Add HidDriver base and small HidGLFW driver 2026-09-06 16:16:37 +02:00
tobid7 7642bf5a11 Implement VCanvas and Update TextElem
- Text now requires a font and is able to take an individual scale
- Container requires &ref for Elements to make sure they always exist
- SetViewport now sets the canvas as well
- SetBaseViewport Sets the Virtual Canvas Size
- Layout Now requires a Drawlist reference in Render function
- main.cpp: updated the template
2026-09-06 16:16:36 +02:00
tobid7 69eeeb66bc Actually implement ultra-rendering 2026-09-06 16:16:35 +02:00
tobid7 80403d7ef0 Rework Project Ultra
- Added container
- Made container the base of Layout
- Set Containers theirself as pParent for Elements on Push
2026-09-06 16:16:35 +02:00
tobid7 c132ff57d1 More stuff done at Project Ultra
- Added renderspace
- Revision System (to not always update pRenderspace
- added some test scene
2026-09-06 16:16:32 +02:00
tobid7 05025647bc WIP (Codename Ultra) UI lib 2026-09-06 16:16:31 +02:00
tobid7 f725064c91 Fix font bugs 2026-09-06 16:16:30 +02:00
tobid7 1e0d24e3a8 Add debug getters (and somehow text is not rendering :/) 2026-09-06 16:16:30 +02:00
tobid7 abcc7c2c31 Fix Vertex Alloc usage at Index Alloc 2026-09-06 16:16:29 +02:00
tobid7 5a6efa5df3 Readd font support (not workign yet) 2026-09-06 16:16:28 +02:00
tobid7 ff6c023aeb Present DX9 Frames ... 2026-09-06 16:16:27 +02:00
tobid7 d920edc54f Add a PositionTranslate func and add Errors for TextureSize mismatch 2026-09-06 16:16:26 +02:00
tobid7 700229e6a6 Add PD::Image and add a setter for logfilter 2026-09-06 16:16:26 +02:00
tobid7 c8b5d72b09 Forgot about dx9 (UNTESTED!!!) 2026-09-06 16:16:25 +02:00
tobid7 fd7e9b5f4e Add Os Bridge into test framework 2026-09-06 16:16:25 +02:00
tobid7 9606fd819d Refactor PD::Li Pools system, Upgrade PD::Pool and add better logging
- Add ResetFast to Pool using c++20 concept
- Add Put function to Pool
- Use Pool Index instead of pointers in Command
- Add accessor to Li Pools to prevent wrong command usage
- Add Command Formatter
- Use ResetFast for all Pools
- Add Reset func to Li::Vertex (for ResetFast)
- Add Pool Expandor and Put funcs to Lithium pools
- Add getters for GfxDriverBase to PD::Li Pools
2026-09-06 16:16:24 +02:00
tobid7 6c4e4c2264 Add nintendo switch support 2026-09-06 16:16:24 +02:00
tobid7 b39afa7592 Add Drawlist
- Add Pool iterator support
- Add Pool Expandability
- Add Pool::Push
- Add Lithium Maths API
- Remove InitPools
- update spirv-helper
2026-09-06 16:16:23 +02:00
tobid7 256a355269 Replace spirv-helper stuff with a library that combines everything 2026-09-06 16:16:22 +02:00
tobid7 c47690238f Full 3ds support and fix dx9 2026-09-06 16:16:20 +02:00
tobid7 0214cbcd78 Work at 3ds support and backend upgrades
- Track textures (not sure if this is done tbh)
- Add lithium formatters and move TextureID, TextureFormat and TextureFilter to lithium
- Only include gl-helper if any glDriver is included
- Add Li::Rect for UV stuff
- Add Li::Texture as Info holder (still thinking of making them to ptrs
- Add Check if textures are still loaded on exit
2026-09-06 16:16:19 +02:00
tobid7 94ad217644 Add backends
- Renamed GfxOpenGL to GfxOPenGL2
- Added GfxOpenGL3 backend for OpenGL 3.3+
- Added WIP DirectX9 backend
- Added structure for Citro3D
- Added linear Allocator
2026-09-06 16:16:19 +02:00
tobid7 641a9df9de More work to drivers
- Add gfx_test
- add texture loading to GfxOpenGL
- add full submit code
- add debug logging
- add construct and destroy functionality to Pool
- add command functionality
- add vertex and index pools to lithium (static and not threadsafe yet)
- Update GfxDriver Matrix with SetViewPort
- Add glfw (only dependency of gfx_test) maybe later required for input driver
2026-09-06 16:16:18 +02:00