Commit Graph
39 Commits
Author SHA1 Message Date
tobid7 79e7682e2d format documents 2026-09-06 16:13:36 +02:00
tobid7 3fd005e8a6 unload debugfont and add Gfx debug menu 2026-09-06 16:13:35 +02:00
tobid7 a04efd602a More timings 2026-09-06 16:13:33 +02:00
tobid7 d7188aa140 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:13:32 +02:00
tobid7 fb04d5ec79 Load the font async for now 2026-09-06 16:13:31 +02:00
tobid7 89e98bbcc2 n3ds-boost 2026-09-06 16:13:30 +02:00
tobid7 83e06e013f SDF & MONOSPACE FONT RENDERING 2026-09-06 16:13:30 +02:00
tobid7 b1cf3840af Upload pools once per Gfx::Draw and FIX DX9 2026-09-06 16:13:29 +02:00
tobid7 ccb5191551 reset pools on newframe 2026-09-06 16:13:28 +02:00
tobid7 affad4febd move global pools into gfx driver
prevents double copy problems
saves memory
(needs to be optimized...)
2026-09-06 16:13:28 +02:00
tobid7 4c15f91e88 remove poc func 2026-09-06 16:13:22 +02:00
tobid7 da4baf8fbd Add support for rotated gradients 2026-09-06 16:13:22 +02:00
tobid7 eda4213ffc Add stick and trigger input support 2026-09-06 16:13:21 +02:00
tobid7 6116f97bba 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:13:20 +02:00
tobid7 8ac08b15d4 Add proper Gamepad support (WIP) 2026-09-06 16:13:19 +02:00
tobid7 69936b1cf0 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:13:18 +02:00
tobid7 d43ed70ba3 Add HidDriver base and small HidGLFW driver 2026-09-06 16:13:17 +02:00
tobid7 82d5fa6ae3 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:13:16 +02:00
tobid7 3805e08b31 Actually implement ultra-rendering 2026-09-06 16:13:16 +02:00
tobid7 350cb752af Rework Project Ultra
- Added container
- Made container the base of Layout
- Set Containers theirself as pParent for Elements on Push
2026-09-06 16:13:15 +02:00
tobid7 6c1c59014e More stuff done at Project Ultra
- Added renderspace
- Revision System (to not always update pRenderspace
- added some test scene
2026-09-06 16:13:12 +02:00
tobid7 d8b19e3993 WIP (Codename Ultra) UI lib 2026-09-06 16:13:11 +02:00
tobid7 8ebee69338 Fix font bugs 2026-09-06 16:13:10 +02:00
tobid7 283583c333 Add debug getters (and somehow text is not rendering :/) 2026-09-06 16:13:10 +02:00
tobid7 a96bb1e874 Fix Vertex Alloc usage at Index Alloc 2026-09-06 16:13:09 +02:00
tobid7 266075fe4b Readd font support (not workign yet) 2026-09-06 16:13:09 +02:00
tobid7 22d8e74f25 Present DX9 Frames ... 2026-09-06 16:13:07 +02:00
tobid7 bc09667346 Add a PositionTranslate func and add Errors for TextureSize mismatch 2026-09-06 16:13:07 +02:00
tobid7 1b663aa120 Add PD::Image and add a setter for logfilter 2026-09-06 16:13:06 +02:00
tobid7 71a1abed20 Forgot about dx9 (UNTESTED!!!) 2026-09-06 16:13:06 +02:00
tobid7 f02b67043f Add Os Bridge into test framework 2026-09-06 16:13:05 +02:00
tobid7 35ef853c49 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:13:05 +02:00
tobid7 0fe3872d08 Add nintendo switch support 2026-09-06 16:13:04 +02:00
tobid7 8ece89aa62 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:13:03 +02:00
tobid7 d055521c2a Replace spirv-helper stuff with a library that combines everything 2026-09-06 16:13:02 +02:00
tobid7 b6ba5eb64e Full 3ds support and fix dx9 2026-09-06 16:13:00 +02:00
tobid7 0f7223ff18 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:12:59 +02:00
tobid7 9359167a8e 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:12:59 +02:00
tobid7 1681ec458a 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:12:58 +02:00