Skip to content

Releases: alexheretic/glyph-brush

0.8.2

31 Jan 16:20
0.8.2
902d21a
Compare
Choose a tag to compare
  • Support multi-byte unicode characters in built-in layouts (only partially supported before).
  • Optimise vertex generation allocation; gives a small worst-case performance boost.
name                                                   control.stdout ns/iter  change.stdout ns/iter  diff ns/iter  diff %  speedup 
no_cache_render_100_small_sections_fully               19,016,459              17,711,135               -1,305,324  -6.86%   x 1.07 
no_cache_render_3_medium_sections_fully                12,896,250              12,053,503                 -842,747  -6.53%   x 1.07 
no_cache_render_1_large_section_partially              4,897,027               4,705,228                  -191,799  -3.92%   x 1.04 

0.8.1

12 Jan 11:02
0.8.1
Compare
Choose a tag to compare

Improve GPU texture cache performance by partitioning the glyph lookup table by font & glyph id.

name                                                    control.stdout ns/iter  change.stdout ns/iter  diff ns/iter   diff %  speedup 
gpu_cache::cache_bench_tests::cache_bench_tolerance_1   3,004,912               2,502,683                  -502,229  -16.71%   x 1.20 
gpu_cache::cache_bench_tests::cache_bench_tolerance_p1  5,081,960               4,638,536                  -443,424   -8.73%   x 1.10 

0.8.0

30 Dec 20:15
0.8.0
Compare
Choose a tag to compare
  • Update to gfx 0.17
  • Update to log 0.4

0.7.0

08 Dec 16:49
Compare
Choose a tag to compare
  • GlyphCalculator allows font calculations / pixel bounds etc without actually being able to draw anything, or the need for gfx objects. Using a scoped caching system.
  • Update to rusttype 0.3.0
  • Cache / font lifetime changes made to rusttype allow removing the .standalone() calls when adding glyphs to the gpu-cache. This and other rusttype optimisations can result in up to ~25% faster worst case performance (worst case being no position/draw caching / text changes every frame).
  • OwnedVariedSection & OwnedSectionText to help some edge cases where borrowing is annoying.
  • Simple Debug implementations to allow end users to derive more easily.

0.6.4

24 Nov 16:41
0.6.4
Compare
Choose a tag to compare
  • Switch to OpenGL 3.2 / glsl 150 requirement to fix MacOS issues with glsl 130

I'm publishing as a minor increment even though this may break your setup if you relied on OpenGL < 3.2 support, but I don't think anyone actually does. Please get into contact if this broke your setup.

0.6.3

22 Nov 18:28
0.6.3
Compare
Choose a tag to compare
  • Fix GlyphBrush being able to use cached vertices after a render resolution change.
  • When dynamically increasing the gpu glyph texture warn and show a backtrace to allow this to be addressed when using many GlyphBrush instances.

0.6.2

20 Nov 17:32
0.6.2
Compare
Choose a tag to compare

Fix VariedSections with multiple SectionText parts ignoring end-of-line hard breaks.

0.6.1

13 Nov 14:42
0.6.1
Compare
Choose a tag to compare

Add GlyphBrush#glyphs & #glyphs_custom_layout methods to allow access to the PositionedGlyphs of a section.

0.6.0

08 Nov 00:57
0.6.0
Compare
Choose a tag to compare
  • GlyphBrushBuilder supports Font types with using_font/add_font
  • Renamed existing GlyphBrushBuilder methods -> using_font_bytes/add_font_bytes

0.5.1

02 Oct 15:00
0.5.1
Compare
Choose a tag to compare

Fix rare glyph ordering panic in gpu cache code