9cc5d85b01
fix for draw optimization
2024-06-16 08:56:24 -04:00
964c6c852d
Fixes to shape cache and atlas region math
2024-06-16 08:56:06 -04:00
fd3bb65aaf
fixes to LRU font cache
2024-06-16 08:54:37 -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
13f24b4ae9
More fixes, more letters
2024-06-15 08:20:58 -04:00
5f09c22f11
Finally got a letter on the screen with the VEFontCache port
2024-06-15 04:29:10 -04:00
569ce5ce99
still diagnosing...
2024-06-15 02:08:29 -04:00
87bc31636e
lots of corrections to VEFontCache, still no letters on screen
...
Something is either wrong with the sokol_gfx rendering setup or its a really dumb checkbox/uv value
2024-06-14 17:00:06 -04:00
3b9e08794a
More progress toward VEFontCache rendering
...
Based off of render doc, most likely down to UV issues for where on the glyph buffer the shape is located
2024-06-14 03:13:47 -04:00
bcb684e140
Renders to glyph and I think the atlas targets (but not the screen)
2024-06-13 20:44:10 -04:00
7ec00edfbd
render doc nows shows the lettter...
2024-06-13 19:44:55 -04:00
3402701f99
fix bug with outside bunds calc for VEFontCache.cache_glyph
2024-06-13 18:35:32 -04:00
314582b225
Changes while attempting to debug
2024-06-13 18:25:11 -04:00
692ca3a577
sokol gfx bug fixing for the pass/pipeline log errors (still black screen)
2024-06-13 13:58:23 -04:00
5bd6519b6a
Bugfixing the runtime (rendering not working yet)
2024-06-11 22:20:30 -04:00
82e7482c85
Finished first draft for VEFontCache font provider hookup for sokol_gfx (untested)
2024-06-09 21:39:49 -04:00
93368a40ff
Changed new shapers' namespace to just ve
2024-06-06 16:19:53 -04:00
4a931dcbe5
Setup shaders for text rendering based on VEFontCache samples
2024-06-06 16:15:57 -04:00
a81019d2a5
Decided against the mapping of parser and shaper infos
...
Parser and shaper should just be intrusive to w/e uses them adding a map directions slows things down for no reason..
2024-06-06 10:19:20 -04:00
71e8fadcab
VEFontCache: Initial hookup to sectr module & runtime bugfixes
2024-06-06 01:07:23 -04:00
38be79d7a9
VEFontCache: runtime bugfixes
2024-06-06 00:43:18 -04:00
566a90001b
Finished draft porting pass for VE Font Cache (next is hook to sokol_gfx + runtime testing)
2024-06-05 19:52:25 -04:00
d469fd53e8
progress on VEFontCache port
2024-06-05 13:27:34 -04:00
991e7a81c0
Progress on VEFontCache port, only cache_glyph_to_atlas & shape_text_uncached left
2024-06-04 18:44:12 -04:00
26e53bf327
VEFC: ported decide_codepoint_region
2024-06-04 13:30:30 -04:00
38ebed8874
VEFC: Added bad edge case to handle parsing conic curves, progess on cache_glyph
2024-06-03 21:08:12 -04:00
c182ab7173
An attempt at doing a freetype outline to the stbtt shape verts
2024-06-03 19:37:09 -04:00
1741532d64
Progress on VEFontCache port, working on freetype outline to stbtt shape
2024-06-03 17:43:15 -04:00
26ad2d1e49
VEFontCache : Finished porting the LRU
2024-06-03 01:04:24 -04:00
f99157aae5
Starting the process of porting VEFontCache
2024-06-02 17:29:44 -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
d63242ac9c
Some progress on fontstash
2024-05-31 19:31:08 -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
300727198b
made empty files for the projection parsers
...
Planning to isolate the implementation into a separate package
Eventually the UI and Font handling will also be.
2024-05-31 11:28:24 -04:00
3998776f4b
Beginning to lift the "grime" files to their own pacakge
2024-05-31 11:26:52 -04:00
0b74a8115e
Minor cleanup to current bad impl of font rendering
...
Just trying to really "get" sokol_gfx.h
2024-05-31 11:25:27 -04:00
64e56485fa
remove .bkup of the learngl shader as its no longer needed
2024-05-30 13:18:28 -04:00
936c0100ba
Got text rendering to work with sokol_gfx (learngl text rendering article #1 )
...
Need to todo the altas article next then the optimizing vod
2024-05-30 13:06:51 -04:00
c681370d8b
Just restore some code that I deleted from the raylib font provider file.
2024-05-26 13:58:55 -04:00
5c2f55148a
zpl_hmap prefix to hmap_zpl, plus some todos to go back to builtin containers
2024-05-26 13:35:08 -04:00
469fa5f8ec
Fixed hot-reload for sokol
2024-05-26 13:33:54 -04:00
bb06d3b44e
Don't poll input (we need to gut raylib's and switch over to sokol)
2024-05-26 12:24:11 -04:00
0d2c5e478b
Don't reload font_provider_data's cache (since we don't have that swapped yet)
2024-05-26 12:23:50 -04:00
797ab227e9
Gut raylib usage from the codebase.
...
Going to either fully commit to sokol or if it fails, rolling the platform layer myself.
2024-05-25 11:52:23 -04:00
13c3032dba
Initial setup of sokol_gfx to replace the raylib impl for rendering.
...
Next I need to setup sokol_gp
2024-05-24 16:31:22 -04:00
cf81d3f9bd
Renamed str_fmt_alloc to str_fmt, str_fmt to str_fmt_out, allocator convention enforcement in context
...
I'm enforcing aprintf it as the default formatter.
I changed up the context allocator assignment to reflect how I've been intending to allocation in startup & platform events vs tick.
Tick uses the frame slab's by default with transient on temp. Startup & platform events use the transient by default & for temp, with any use of the persistent allocator being explicit.
2024-05-22 17:13:56 -04:00
368abefccf
Restored some of the window awareness previously avail in raylib for the new sokol layer.
...
Switched frametime_delta32 to frametime_avg_ms.
I'll problably rename it and keept delta32 for actual delta. Reading over the sokol_app code I noticed it uses the avg frametime and definitely want to do that for spike alleviation...
2024-05-22 15:39:19 -04:00