ed
841260849e
more reduction of direct mutuable state referencing
2024-12-30 13:26:14 -05:00
ed
7ed0010761
move app/ui_theme to ui/widget_theme
2024-12-30 12:50:21 -05:00
ed
4b3665ad98
Made logger and state scope files (going to be metric & logging viewer ui for the app.
2024-12-30 12:23:33 -05:00
ed
8905105d40
Moved settings menu to its own file, got min_size based on content working (only for the settings menu)
2024-12-30 12:22:58 -05:00
ed
57d51fc7b1
Began to reduce direct referencing of mutable state struct
2024-12-30 12:22:26 -05:00
ed
9da86c1f4b
Minor adjustment / cleanup (VEFontCache)
2024-12-29 18:26:34 -05:00
ed
7488a6828e
Text improvements
...
* Added clear_atlas_region_caches & clear_shape_cache to VEFontCache (Used on hot-reload by the pototype's font provider)
* Made glyph_draw's over_sample a vec2 for initialization (incase user wants to do some float value multiple of 4x4)
* ADVANCE_SNAP_SMALLFONT_SIZE made a runtime option: Shaper_Context.adv_snap_small_font_threshold
* Large imporvement to text hinting and general rendering of text
2024-12-29 17:30:00 -05:00
ed
7eab6f9a7f
WIP: attempt to improve text rendering
2024-12-29 10:20:06 -05:00
ed
292d1b58b5
finishex exposing cam zoom settings to the wiget menu and the font size canvas scalaar
2024-11-30 04:51:03 -05:00
ed
dd2f6e9c71
Finished cam_zoom_mode settings entry, reduced anchor and alignment contraints for ui_layout_children_<> procs
2024-11-30 02:34:11 -05:00
ed
7f8a068268
titles for the zoom mode setting menu btns aren't behaving correctly...
2024-11-30 01:04:32 -05:00
ed
eba9ec8a30
changed engine_refresh_hz setting to use the InputBox widget
2024-11-29 23:25:24 -05:00
ed
533da2cdfb
made intial impl for UI_TextInputBox, used it with min and max cam zoom settings ui
2024-11-29 23:17:27 -05:00
ed
f6ba5b2638
minor cleanup before generalization
2024-11-29 20:29:26 -05:00
ed
898c389bb0
prototype cursor done
2024-11-29 20:11:08 -05:00
ed
c62bf2cf07
refinements to input box prototype
...
Added constraints, visual feedback blink when bad input, enter can confirm setting
Adding proto-text cursor next
2024-11-29 17:46:22 -05:00
ed
36678c1127
Fixes for nov 7 breaking changes to sokol_gfx
2024-11-26 10:50:26 -05:00
ed
109d2b0ff1
update vefontcache to latest
2024-11-26 10:42:27 -05:00
ed
08fff0f6fa
update vefontcache mappings file
2024-10-19 15:31:16 -04:00
ed
cfc1a802d5
fix for changes to sokol_gfx.Filter.NONE to NEAREST
2024-09-09 13:26:59 -04:00
ed
bb6e1f78d3
Update vefontcache to latest
2024-07-02 16:21:07 -04:00
ed
5c3bc243a4
update url for harfbuzz
2024-07-02 13:37:17 -04:00
ed
77301c2b28
finish force rename
2024-07-01 16:14:54 -04:00
ed
e793392e85
force rename lower
2024-07-01 16:14:33 -04:00
ed
d797762702
fix for harfbuzz, remove raylib from update_deps.ps1
2024-07-01 01:24:43 -04:00
ed
2423d50407
scripts cleanup
2024-06-30 21:53:48 -04:00
ed
331046f590
Remove excess content from VEFontCache (keeping it only in its repo)
2024-06-30 21:53:42 -04:00
ed
0655ade456
Support for rounded rectangles & borders (not the best implementation...)
2024-06-30 13:37:24 -04:00
ed
8ecfd7407e
VEFontCache: Adjustments to positioning & text size shape values
2024-06-30 13:36:54 -04:00
ed
2698670890
Finally reached parity pre-rendering overhaul
2024-06-29 23:49:12 -04:00
ed
72eb3a1b3b
readme fix
2024-06-29 22:51:56 -04:00
ed
597c88c6b7
Misc + made a more controlled digital zoom
...
Trying to get digital zoom to closer target levels that would match specific even font sizes
Various other changes from iterating on VEFontCache
2024-06-29 22:36:22 -04:00
ed
a9ddd7668f
VEFontCache: Various changes to field types, increased shape cache default capacity
2024-06-29 22:34:37 -04:00
ed
a666300f41
VEFontCache: Remove draw_cached_glyph, formatting
...
No longer needed as draw_text_batched handles it
2024-06-29 20:33:07 -04:00
ed
93e43c2b19
Updates for getting get_font_vertical_metrics, + other cleanup
2024-06-28 17:39:28 -04:00
ed
cdf0f3e3bd
typo
2024-06-28 07:51:47 -04:00
ed
a28303bad6
Added manual simd but odins already doing it perfectly (+ ohter attempted optimizations)
2024-06-28 07:31:51 -04:00
ed
b8665d0bc2
wrining draw_text_batch
...
Gotta juice it out
2024-06-28 06:26:21 -04:00
ed
bb52139e17
2 ms improvement from lru optimizations
2024-06-28 06:08:03 -04:00
ed
ce2a837bb6
got rid fo the shape draw_list caching code
2024-06-28 06:04:04 -04:00
ed
3b5cc3cc80
Some minor performance improvments, draw_list caching for shapes failed.
2024-06-28 05:29:53 -04:00
ed
12741a228d
mostly formatting/name changes and other misc stuff
2024-06-28 03:27:25 -04:00
ed
43415446b0
VEFontCache: look into to trying to cache the draw_list for a shape
...
plus other misc changes
2024-06-28 03:26:55 -04:00
ed
5fbede25cb
fix for compile error on table api breaking change
2024-06-27 00:00:26 -04:00
ed
d437e95efb
misc changes to ve font cache after starting to make the standalone repo
2024-06-27 00:00:07 -04:00
ed
c94be49714
making VEFontCache less dependent on grime pkg (getting it ready to be standalone)
2024-06-26 23:37:29 -04:00
ed
e6147caf41
small update
2024-06-26 23:28:08 -04:00
ed
063cf6b45c
license
2024-06-26 23:26:42 -04:00
ed
f08b04e901
last cleanup before docs
2024-06-26 22:51:04 -04:00
ed
1e7650970b
compile fixes
2024-06-26 21:51:33 -04:00
ed
fc59f948f5
moved catch_batch_glyph to draw file
2024-06-26 21:40:45 -04:00
ed
86d6adc931
Set glyph_padding to 4 (when using 8x8 over_sample we need more padding)
2024-06-26 17:02:15 -04:00
ed
e6ccdd90d1
changes to sectr module based on VEFontCache changes
2024-06-26 15:23:44 -04:00
ed
470197cb6c
Advance_Snap_Smallfont_Size to 0 by default, removed position rounding in shape_text_uncached
...
Need to eventually make the rounding an option
2024-06-26 15:23:02 -04:00
ed
8e8f25ba50
VEFontCache: Lifted the GlyphDrawBuffer member of atlas to the context
2024-06-26 15:15:03 -04:00
ed
343d558a94
Clean up of last remaining vestitudes of using my containers in VEFontCache
2024-06-26 13:28:54 -04:00
ed
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
ed
413f544e9c
VEFontCache: Codepath simplificiation & optimization
2024-06-26 06:01:06 -04:00
ed
6f034534f3
VEFontCache: Should be using odin arrays and maps excluisvely now for the package
2024-06-25 23:53:44 -04:00
ed
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
ed
268ba29ec6
minor pref improvements, started to convert to using odin's arrays (in VEFontCache) (last commit bad)
2024-06-25 19:11:31 -04:00
ed
c567d48a4c
minor pref improvements, started to convert to using odin's arrays (in VEFontCache) (last commit bad)
2024-06-25 19:11:10 -04:00
ed
00587a226b
minor pref improvements, started to convert to using odin's arrays
2024-06-25 19:09:53 -04:00
ed
6fac2a97ff
Swapped LRU and temp_codepoint_seen to use odin's vendor hash map
...
Starting to get serious about profiling this procedure and optimizing performance.
I also want to make it more ideomatic now...
2024-06-25 17:10:18 -04:00
ed
b5f9687927
Various improvements to VEFontCache's font rendering
2024-06-25 14:28:59 -04:00
ed
1fe741034d
wip : trying to fix the workspace view bounds detection
2024-06-25 02:38:08 -04:00
ed
1f4d07727e
minor reorganization
2024-06-25 02:37:18 -04:00
ed
894c3fee97
Fix hot-reload
2024-06-24 23:38:53 -04:00
ed
08932c8c99
Fixes to test_whitespace_ast
2024-06-24 23:19:18 -04:00
ed
6f722026ce
Text rendering is now around parity (if not better) than what was done before with raylib
...
Performance still sucks since the rendering implementation is subpar
2024-06-24 23:19:08 -04:00
ed
321bbfd772
Fix for VEFontCache: measure_text_size & shape_text_cached
2024-06-24 23:17:18 -04:00
ed
838e37e58d
Fixed crash with VEFontCache.can_batch_glyph
2024-06-24 23:16:24 -04:00
ed
c93c0ed567
Minor lifting in the render side, getting ready to just hunker down and take notes on whats next
...
* VEFontCache needs to get fixed up (possibly bring back ELFHash)
* Problably going to do conversion early to odin's array and map usage
* Need get the quad tree setup for the ui so that I can do fast and efficient traversal for the layer based rendering.
2024-06-24 16:36:22 -04:00
ed
0d9623c340
layer text rendering works, ui has issues, there is perf problems
...
* Added todos for VEFontCache
* Going be remaking the direct box traversal rendering again, I'll keep both layer based and it as a option to switch between
* Need to implement a quad tree for the ui boxes to help with collision test traversal
2024-06-24 11:29:44 -04:00
ed
dee8fc7ef9
layer text rendering is working!
2024-06-23 21:32:00 -04:00
ed
7d41fcc335
wip : trying to get layered text rendering working
2024-06-23 20:22:36 -04:00
ed
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
ed
ce1d31f0d4
Progress on fleshing out rendering (Getting ui ready to render in "layer batches")
2024-06-23 02:47:13 -04:00
ed
136fef65c4
bad notes updates
2024-06-23 02:45:19 -04:00
ed
ea384b10af
brainstorming notes on imgui ui_graph_build_end processing passes
2024-06-21 16:33:34 -04:00
ed
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
ed
a560222d5d
Fixed a long-standing issue with the chained hashmap (finally)
2024-06-21 00:26:29 -04:00
ed
c405c47e6c
mem tracker updates
2024-06-20 15:36:47 -04:00
ed
f9820457d1
notes
2024-06-20 14:40:02 -04:00
ed
489faf5515
Misc changes (refactors, notes)
2024-06-20 14:39:50 -04:00
ed
03500acb9a
notes updates
2024-06-20 14:38:32 -04:00
ed
5d6f996d3c
Finished fixing input back to prev-sokol feature parity
2024-06-19 18:09:11 -04:00
ed
6f4a5e215c
prevent hot reload failure from lack of transient backing
2024-06-19 05:51:34 -04:00
ed
bcbbf95471
add support for fixed_size option to make_queue
2024-06-19 05:51:13 -04:00
ed
10f58b432e
truncate log files on init
2024-06-19 05:50:40 -04:00
ed
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
ed
4b8c4d0c2c
Updated render testing str
2024-06-18 17:56:34 -04:00
ed
05ecad8f56
sokol gp rectangle demo works!
2024-06-18 17:24:07 -04:00
ed
d2d55b210c
Setup initial readme for VEFontCache
2024-06-18 11:24:54 -04:00
ed
156ddcef97
Removing fontstash and RFont from codebase
...
Planning to instead just focus on using VEFontCache.
2024-06-18 11:18:33 -04:00
ed
d6cd65288f
remove input_raylib.odin
2024-06-18 10:22:34 -04:00
ed
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
ed
3b395f3356
Ignore thirdparty and toolchain directories & updates to build scripts
2024-06-17 17:24:59 -04:00
ed
425a642fd3
Started to setup input events based off sokol
...
Will replace the input polling done with raylib.
Going to also provide the more robust input tracking for consuming events with the UI interactions
2024-06-17 03:35:53 -04:00
ed
05ffaf432d
VEFontCache: got rid of elf hash using a "label" hash borrowed from the rad debugger
...
There was an issue with uniqueness so I just decided to scrap it (no need to keep parity with the original there...)
2024-06-17 01:24:03 -04:00