Commit Graph
44 Commits
Author SHA1 Message Date
tobid7 320c4c8ef7 hotfix 2026-09-06 16:16:58 +02:00
tobid7 2d924a0c95 Add Hid3DS 2026-09-06 16:16:58 +02:00
tobid7 245854aaa9 Bring back global lithium pools
why?
cause sorting around the global driver pool would basically use more cpu power then just copy data sequences into the right order
And sorting data references costs 0 performance at all
2026-09-06 16:16:57 +02:00
tobid7 a64018d5e8 dx9: update device size on window size change 2026-09-06 16:16:55 +02:00
tobid7 ccf1f3a560 format documents 2026-09-06 16:16:55 +02:00
tobid7 4fc188be7a unload debugfont and add Gfx debug menu 2026-09-06 16:16:54 +02:00
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 a70247bc91 implement font deletion 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