freenode/#shirakumo - IRC Chatlog
Search
7:58:59
Shinmera
Which would mean either the patented technique is different, or the patent is not valid due to prior publication, yeah?
8:16:49
Shinmera
For text layout I mean stuff like alignment options and an algorithm that actually selects line break options.
8:49:25
Colleen
github.com/servo/pathfinder Website (HTML), Title: GitHub - servo/pathfinder: A fast, practical GPU rasterizer for fonts and vector graphics
8:53:33
Shinmera
Though figuring out which part of that stuff to tear out to get glyph rendering is giving me a headache
9:07:31
|3b|
doesn't sound too bad, looking at https://nical.github.io/posts/a-look-at-pathfinder.html
9:07:31
Colleen
nical.github.io/posts/a-loo... Website (HTML), Title: Eight million pixels and counting – A look at pathfinder
9:09:12
Shinmera
Maybe it'll be ready by the time I've worked myself up from the gutters to the top of the stack
9:10:06
Shinmera
Yeah, thought so. I just really like the idea of something that doesn't need an atlas.
9:10:54
|3b|
ACTION is also wondering about whether it would be reasonable to generate sdf atlas on GPU at runtime
9:11:30
Shinmera
Maybe, but needing a texture large enough to hold all glyphs in a font can still be bad
9:12:43
Shinmera
Though having to recompute atlases at runtime when the set changes might introduce unwanted stutters if it's not fast enough.
9:12:46
|3b|
seems like for most normal uses, you have maybe 1-2k active at any point (and that's for something like chinese)
9:14:33
|3b|
if set of characters doesn't change rapidly, calculating a few new glyphs per frame is probably not much, and GPU bandwidth is probably high enough to make a copying GC for space in the atlas. particularly with sparse textures
9:15:55
|3b|
https://github.com/3b/first-light/blob/msdf-wip/examples/shaders/text.lisp is where i got adding it to virality
9:15:56
Colleen
github.com/3b/first-light/b... Website (HTML), Title: first-light/text.lisp at msdf-wip · 3b/first-light · GitHub
9:17:53
|3b|
https://github.com/Chlumsky/msdfgen/blob/master/README.md#using-a-multi-channel-distance-field
9:17:53
Colleen
github.com/Chlumsky/msdfgen... Website (HTML), Title: msdfgen/README.md at master · Chlumsky/msdfgen · GitHub
9:19:11
Shinmera
I know my way around SDF, just haven't read anything about how MSDF encodes the info.
9:20:37
|3b|
https://msdf-bmfont.donmccurdy.com/ is a tool to generate the atlas and metadata or https://github.com/soimy/msdf-bmfont-xml directly if you have node or whatever it uses set up
9:20:39
Colleen
github.com/soimy/msdf-bmfon... Website (HTML), Title: GitHub - soimy/msdf-bmfont-xml: Generate BMFont texture and spec XML using msdfgen
9:22:38
|3b|
https://github.com/3b/3b-bmfont is the part that parses the metadata files from either of those generators
9:22:39
Colleen
github.com/3b/3b-bmfont Website (HTML), Title: GitHub - 3b/3b-bmfont: read/write bmfont metadata files
9:26:19
|3b|
ACTION has that pathfinder thing stuck in my head now, pondering options for how to implement it
9:27:31
|3b|
ACTION really needs to focus on one thing though, bad enough mfiano making me want to rewrite pngload again
9:27:51
Shinmera
Afaiu the Rust Pathfinder supports stuff with GL 4.3 by using compute shaders and things below by gradually doing more on the CPU. Though that might not be the case anymore since the original article from 2017
9:33:11
|3b|
ACTION doesn't have a screenshot, but it also does lines and points, theoretically with arbitrary width/size
9:37:21
|3b|
currently no fancy joins/caps, but i want to write a 2d API in it with stuff like that also
9:38:29
|3b|
right now it just has the low-end version that expands points/lines to quads (and draws quads as 2 tris)
10:11:45
Shinmera
It just occurred to me that doing something like knowing where the cursor position is in a text field with bidi is.... uh,
11:25:58
Shinmera
|3b|: It seems the bmfont stuff has support for multiple "banks", but the bank id does not seem to get passed during MAP-GLYPHS. Do you know what's up with that stuff?