345 Commits

Author SHA1 Message Date
Ed_
b5fdc02b7d Updates to client api settings and memory suage of sokol_gp 2025-01-09 23:37:15 -05:00
Ed_
c114624eee fixes for: Atlas-Region B clear-region on caching glyph, batching, & tuning default values for performance
Need to fix the debug vis for the library
2025-01-09 23:36:39 -05:00
Ed_
08a8b4b823 Insane perfomrance after tuning the batch and caches. 2025-01-09 14:54:59 -05:00
Ed_
b4abde1094 Misc: VFontCache perf and features, exposing config on prototype side... 2025-01-09 13:23:35 -05:00
Ed_
ce84652417 More offloading to shaper, seeing if its better todo some math in loop... 2025-01-08 08:38:06 -05:00
Ed_
18d8735c54 Preparing to attempt to offload various metric calculations for a shape's glyphs to the shape itself from the draw list generator 2025-01-07 22:24:23 -05:00
Ed_
fa627b4c4a LRU proper casts id to Pool_ListIter (don't assume i32) 2025-01-07 22:23:24 -05:00
Ed_
6010dd1590 Fix for blitting 2025-01-07 22:10:06 -05:00
Ed_
7dee697103 partially restoring old order to try to identity the regression with blitting to atlas... 2025-01-07 17:52:42 -05:00
Ed_
6e01c39899 Builds again has on text rendering (makes sense) 2025-01-07 10:17:46 -05:00
Ed_
3a245a1e9b WIP (Broken) docs and huge changes 2025-01-07 03:06:12 -05:00
Ed_
a9080fe1f3 LRU cache now as templated key type
Was testing to see if 16-bit cach emade a diff for the glyphs (it did not)
2025-01-06 21:18:39 -05:00
Ed_
bf38087d8e Remove rune tracking for string cache, + vecache deharcoding atlas...
Shapers as well
2025-01-06 17:21:16 -05:00
Ed_
0350a0c282 Remove rune tracking for string cache, + vecache changes
Getting ready to de-hardcode vefontcache shaders
2025-01-06 14:12:55 -05:00
Ed_
f1f98ffafb Removed usage of procedure using statements from vefontcache 2025-01-06 11:23:30 -05:00
Ed_
840e6053ff WIP - VEFontCache: Working on getting font size usage and super-sampling via scaling working on library side... 2025-01-06 11:00:55 -05:00
Ed_
c0b439bc30 Update readme and build script 2025-01-06 01:20:27 -05:00
Ed_
f18da9af05 minor adjustments 2025-01-04 20:29:32 -05:00
Ed_
878c419a1f Oversized streamlined 2025-01-04 20:09:59 -05:00
Ed_
fe4f3ad14a VEFontCache : Streamlined to_cache (fixed) 2025-01-04 16:59:56 -05:00
Ed_
5b59942c1a WIP - VEFontCache: Working on streamlining to_cache codepath 2025-01-04 15:55:33 -05:00
Ed_
83b7098ce9 WIP : trying to fix oversized yet again... 2025-01-04 10:16:22 -05:00
Ed_
d6e232b3f7 Fixed ui rendering issue with getting vertical metrics unscaled. 2025-01-04 10:13:30 -05:00
Ed_
cb6053395c WIP - VEFontCache: Major changes
* Add back proper batching (busted the rendering for it though..)
* Some reogonzation of definitions and procedure args
* CURRENTLY BROKEN: Something went wrong with the calculations for text positioning..
2025-01-03 23:06:31 -05:00
Ed_
078d9c8447 Misc changes 2025-01-03 18:04:20 -05:00
Ed_
049633bdc5 VEFontCache: Fixed oversized drawing
* Added ENABLE_DRAW_TYPE_VIS
* Added DISABLE_PROFILING
* Some cleanup of unused codepaths
*
2025-01-03 18:04:15 -05:00
Ed_
f6e7741bf3 More codepath simplification, convert lru to track u32 2025-01-03 15:11:02 -05:00
Ed_
c4c3bba20c VEFontchange: codepath changes and bugfixing 2025-01-03 13:06:43 -05:00
Ed_
8c7b3e2058 misc changes 2025-01-03 13:06:05 -05:00
Ed_
db1701a5d7 finished simpiflying/pipelining generate_oversized_draw_list 2025-01-03 02:16:49 -05:00
Ed_
b066b0de3a more perf improves for VEFontCache 2025-01-03 01:25:05 -05:00
Ed_
5e0afd5b7b WIP - VEFontCache : generate_shape_draw_list codepath simplification 2025-01-02 22:56:08 -05:00
Ed_
9448c3906c Performance improvement using the index of glyph_pack for sub slices instead of appending values directly. 2025-01-02 20:05:45 -05:00
Ed_
44c97eec71 move freetype function to its own file to declutter draw.odin 2025-01-02 18:16:46 -05:00
Ed_
b427f1fbc8 decide_codepoint_region -> atlas_decide_region (codepath simplifcation... 2025-01-02 18:03:32 -05:00
Ed_
73ba89e7f9 WIP - VEFontCache: Rendering 3k lines of whitespace ast is 16 ms rn... 2025-01-02 17:49:39 -05:00
Ed_
560b2a125b Adjustments to render codepath on sectr side 2025-01-02 13:00:22 -05:00
Ed_
fa881a263a Successfuly hard-segmented the three different situations for enquing glyphs of a shape 2025-01-01 23:07:22 -05:00
Ed_
4adbfaa9fd WIP - VEFontCahe: More progress on optimizing codepaths with SOA 2025-01-01 22:11:41 -05:00
Ed_
dd1752f84b WIP - VeFontcache: Testing performance of using an SOA setup for processing shape's glyphs 2025-01-01 17:01:59 -05:00
Ed_
5559d62826 Got render_list proper setup for UI_State rendering...
Still need a spacial indexing method to prevent redundant enqueues to the drawlist (esp for text)

I'm in the process of trying to see if I can keep getting vefontcache even more performant... Making it multi-threaded can help but there might be some single-thread per still possible..
2025-01-01 14:13:30 -05:00
Ed_
c7d465d06e Another bugfix for hashmap_chained 2024-12-31 11:26:21 -05:00
Ed_
9015f4ce3c Converted UI_State box caches to use hmap_chained 2024-12-31 02:39:18 -05:00
Ed_
1fb011f56c hmap_chained: fix for not properly being able to override slots with matching key (that were still occupied) 2024-12-31 02:38:22 -05:00
Ed_
b54d336193 Adjustments to logger 2024-12-31 02:07:30 -05:00
Ed_
ddca5e8668 Finished initial window implementation 2024-12-31 00:17:05 -05:00
Ed_
2a89778c0f May have figured out auto-layout for ordering children (horizontally or vertically)
I'm going to leave the manual compute_layout options for now but their going to be disabled by default.
2024-12-30 23:05:15 -05:00
Ed_
d61bd8f161 more misc changes
It seems applying ceil to cache_glyph_to_atlas.dst_glyph_size does generally improve text clarity...
2024-12-30 19:55:16 -05:00
Ed_
2f2253f12c misc changes
* Decided to not have a state scope (going to be more ganular)
* Fixes to settings_menu (prepping to convert to window after log scope is done)
2024-12-30 19:39:41 -05:00
Ed_
c2476ab854 Progress on window widget, minor refactor for layout directions structs 2024-12-30 19:38:22 -05:00