GPU text rendering with vector textures
Languages and libraries
text rendering library
SHOW HN2016
How HN took it
20 positive, 11 neutral or asking, 3 mixed, 12 critical, out of 46 comments about the project. Thread score +0.10.
Performance: 16 for, 8 againstIdea: 2 for, 2 againstExecution: 0 for, 2 againstDocs: 1 for, 0 againstDesign: 1 for, 0 against
The thread, comment by comment
Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.
positive neutral or mixed critical about another commenter or something else the maker
What HN said
What people liked
Smooth and sharp text rendering in the demo on many devices
From 3 comments
Here's my experience on my local devices: ``` * Quad i7 16 GBytes GTX 970 OSX FFox - perfectly smooth * iPhone 6s+ - very smooth * Nexus 6p - slightly jumpy / laggy but still…
watmough on HNIt's amazingly smooth, I'd say 60+ fps, on my i7-3770K desktop (Geforce GTX970) with Firefox Developer Edition.
bhauer on HNI don't know why you are being downvoted, that is what is happening and I am not convinced that straight textures would be better. We already know that SDF textures are better…
CyberDildonics on HN
Clever technique, more faithful to letterforms than SDF
From 2 comments
Very clever technique! It seems more true to letterforms than SDF. Seems like it might need more texture bandwidth/dependent reads than SDF, but less texture memory as a whole?…
pshc on HNThis is a cool technique. The WebGL demonstration is pretty compelling! It's a little odd to me that they describe distance fields as having an unavoidable problem with sharp…
kevingadd on HN
Objections
Demo performs poorly on some hardware, e.g. Intel integrated graphics on macOS
From 3 comments
Yeah my rMBP uses an embedded Intel graphics card. The performance is horrible, ~2 fps, tried FF and Chrome.
davej on HNEven with a discrete card (M370x), the performance is poor on my rMBP. I only tried Chrome, though.
smskelley on HNIt's very laggy and slow on a quad i7 16GB Macbook Pro. Presumably this is because of the retina display.
davej on HN
Per-frame glyph rasterization is wasteful without atlasing
From 2 comments
This is really neat. Though in practice if you are using this kind of thing I'm pretty sure you will want to combine it with atlasing (i.e. construct an atlas of glyphs via…
pcwalton on HNThat was my first thought. This is brilliant, but the FS is way overworked, making this less practical and going back to the original solution (because it's fast). It's a trade…
baldajan on HN
Demo fails or shows artifacts on some browsers and devices
From 2 comments
strange, I only see white rectangles on the demo (using ff 43.0.3)
_ZeD_ on HNIt doesn't work here, Nexus 5. That's what I see when I zoom in: https://goo.gl/photos/3EXv2t4YZRxmyNPe8
e98cuenc on HN
Requests
Publish the WebGL source code
From 1 comment
Great work! Is there any WebGL source available? The demo runs very poorly on my 15" MBP (late 2013, Intel Iris Pro). I'm not sure if it's just the sheer number of glyphs being…
mattdesl on HN
Add subpixel rendering
From 1 comment
no subpixel rendering or hinting. Im confused - is there a problem with cpu rendered fonts that needs fixing? I didnt notice anything wrong last time I was reading schematics and…
rasz_pl on HN
Questions
How to get started rendering text with this
From 1 comment
This looks great, but I don't understand much of the article. As a half-decent dev, what do I need to do to write "Hello World" on the screen?
voltagex_ on HN
Whether it works for CJK glyphs with complex geometry
From 1 comment
The method seems to assume the geometric complexity of a glyph is relatively small. I wonder if it will work with CJK glyphs. Possibly the number of tiles per glyph would need to…
jepler on HN
Alternatives named
Signed distance field text rendering
From 3 comments
This paper from 2014 is the best recent work I’ve seen about rendering vector graphics on the GPU: http://w3.impa.br/~diego/projects/GanEtAl14/
jacobolus on HNSigned Distance Field fonts are wonderful! I've been using a Unity extension called TextMesh Pro, which works very efficiently, and renders beautiful text that you can configure…
DonHopkins on HNAlthough cool, this is not a particularly novel idea. I remember reading a 2007 SIGGRAPH paper about something similar Valve did in HL2 (or maybe it was Orange Box). Either way,…
dvt on HN
Glyphy
From 1 comment
Another one: https://github.com/behdad/glyphy (SDF, but full vector outlines, not texture sampling)
sho_hn on HN
Direct2D and NV path rendering
From 1 comment
Microsoft has Direct2D https://msdn.microsoft.com/en-us/library/windows/desktop/dd370987(v=vs.85).aspx Nvidia has it's nvPathRendering extension to OpenGL…
corysama on HN