b4abde1094
Misc: VFontCache perf and features, exposing config on prototype side...
2025-01-09 13:23:35 -05:00
ce84652417
More offloading to shaper, seeing if its better todo some math in loop...
2025-01-08 08:38:06 -05:00
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
7dee697103
partially restoring old order to try to identity the regression with blitting to atlas...
2025-01-07 17:52:42 -05:00
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
0350a0c282
Remove rune tracking for string cache, + vecache changes
...
Getting ready to de-hardcode vefontcache shaders
2025-01-06 14:12:55 -05:00
878c419a1f
Oversized streamlined
2025-01-04 20:09:59 -05:00
fe4f3ad14a
VEFontCache : Streamlined to_cache (fixed)
2025-01-04 16:59:56 -05:00
83b7098ce9
WIP : trying to fix oversized yet again...
2025-01-04 10:16:22 -05:00
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
078d9c8447
Misc changes
2025-01-03 18:04:20 -05:00
8c7b3e2058
misc changes
2025-01-03 13:06:05 -05:00
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
73ba89e7f9
WIP - VEFontCache: Rendering 3k lines of whitespace ast is 16 ms rn...
2025-01-02 17:49:39 -05:00
4adbfaa9fd
WIP - VEFontCahe: More progress on optimizing codepaths with SOA
2025-01-01 22:11:41 -05:00
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
c7d465d06e
Another bugfix for hashmap_chained
2024-12-31 11:26:21 -05:00
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
b54d336193
Adjustments to logger
2024-12-31 02:07:30 -05:00
898c389bb0
prototype cursor done
2024-11-29 20:11:08 -05:00
5fbede25cb
fix for compile error on table api breaking change
2024-06-27 00:00:26 -04:00
e6ccdd90d1
changes to sectr module based on VEFontCache changes
2024-06-26 15:23:44 -04:00
9d0cc125a9
Misc changes
...
* Made refactor rende procedures to specify dependencies instead of directly grabbing from state singleton
2024-06-26 06:03:00 -04:00
1533a14a1b
misc changes
...
* draw_text_string_pos_extent_zoomed can now oversample text futher (if desired)
* render_ui_via_box_tree has a rudimentary render pass layering optimization
Add support for the slab allocator to accept arbitrary alignments (odin's map container needs it)
Messing around with 64-byte alignment as the default for the allocator...
2024-06-25 19:13:41 -04:00
1fe741034d
wip : trying to fix the workspace view bounds detection
2024-06-25 02:38:08 -04:00
894c3fee97
Fix hot-reload
2024-06-24 23:38:53 -04:00
55b80da8e5
Fixed input event buffer issues
...
Queue doesn't properly act as a ring buffer had to roll my own.
I want to make a allocated ring buffer as well...
2024-06-23 13:59:04 -04:00
ce1d31f0d4
Progress on fleshing out rendering (Getting ui ready to render in "layer batches")
2024-06-23 02:47:13 -04:00
2b83b69745
Converted string cache table to use HMapChained, initial impl for ui_box_traverse_next_layer_based
2024-06-21 16:33:15 -04:00
a560222d5d
Fixed a long-standing issue with the chained hashmap (finally)
2024-06-21 00:26:29 -04:00
c405c47e6c
mem tracker updates
2024-06-20 15:36:47 -04:00
489faf5515
Misc changes (refactors, notes)
2024-06-20 14:39:50 -04:00
5d6f996d3c
Finished fixing input back to prev-sokol feature parity
2024-06-19 18:09:11 -04:00
bcbbf95471
add support for fixed_size option to make_queue
2024-06-19 05:51:13 -04:00
10f58b432e
truncate log files on init
2024-06-19 05:50:40 -04:00
59ed4d9dd6
fix hot-reload, starting to setup proper rendering again.
...
* Added hot_reload, measure_text_size to VEFontCache
2024-06-19 02:34:02 -04:00
b698f5166b
Base input pass updated for sokol possibly done (untested)
...
Still need to figure out input event consumption, I don't want to do it with the event ring.
I would like to setup input binding layers and then have the push/pop input contextes with a set of bindings.
If the bindings are detected it should "consume" that binding from further use for the buffered time period.
This will be really important with how heavily model this app will be.I
2024-06-18 01:33:50 -04:00
964c6c852d
Fixes to shape cache and atlas region math
2024-06-16 08:56:06 -04:00
65be3eae03
More bug fixing, All latin characters don't look corrupt anymore
...
HMapChained causes memory corruption in VEFontCache (not sure why yet), so I switched temporarily over to HMapZPL.
Fixed bug with parser_get_glyph_shape from me tracking vertices as u16s instead of i16s.
Currently a bug with the frametime example:
text_test_str := str_fmt("frametime: %0.2f", frametime_avg_ms)
It doesn't handle per-frame updates properly compared to C++ source
2024-06-15 14:53:26 -04:00
5bd6519b6a
Bugfixing the runtime (rendering not working yet)
2024-06-11 22:20:30 -04:00
4a931dcbe5
Setup shaders for text rendering based on VEFontCache samples
2024-06-06 16:15:57 -04:00
71e8fadcab
VEFontCache: Initial hookup to sectr module & runtime bugfixes
2024-06-06 01:07:23 -04:00
991e7a81c0
Progress on VEFontCache port, only cache_glyph_to_atlas & shape_text_uncached left
2024-06-04 18:44:12 -04:00
26ad2d1e49
VEFontCache : Finished porting the LRU
2024-06-03 01:04:24 -04:00
33ddd420b7
Progress on porting fontstash
2024-06-02 17:29:27 -04:00
9ba718254c
lifted the hash maps and the string cache to the grime package
2024-05-31 20:51:30 -04:00
e84ec719b3
Progress on lifting the 'grime' module to its own package
2024-05-31 19:31:27 -04:00
f415eada0d
Doing some heavy refactors on the container interfaces
...
Trying to set up their use to be more ideomatic to the core containers
2024-05-31 17:58:18 -04:00
3db403017e
Lifted fontstash to its own package, made packages for RFont and VEFontCache
...
Going to do fonstash first then rfont ports.
After will complete the VEFontCache port
2024-05-31 13:04:52 -04:00
3998776f4b
Beginning to lift the "grime" files to their own pacakge
2024-05-31 11:26:52 -04:00