Coding Adventure: Rendering Text @SebastianLague
Coding Adventure: Rendering Text  @SebastianLague
Uploaded April 2024 | Updated September 2026, 3 weeks ago
This... is text! Let's figure out how to draw it.
Starring: Bézier curves and (oh so many) floating point problems.

Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: patreon.com/SebastianLague
* Nebula: go.nebula.tv/sebastianlague

Source code:
* GitHub: github.com/SebLague/Text-Rendering

Credits and References:
* Fonts and music: github.com/SebLague/Misc-Project-Info/blob/main/Coding-Adventures/TextRendering
* developer.apple.com/fonts/TrueType-Reference-Manual
* microsoft.com/en-us/research/wp-content/uploads/2005/01/p1000-loop.pdf
* wdobbie.com/post/gpu-text-rendering-with-vector-textures

Chapters
0:00:00 Intro
0:01:58 The Font Directory
0:04:27 Loading Simple Glyphs
0:10:42 Bézier Basics
0:13:42 The Character Map
0:15:47 Implied Points
0:18:11 Compound Glyphs
0:20:25 Size and Spacing
0:21:27 Rendering Glyphs with Lots of Triangles
0:22:17 Optimized Curve Rendering (Loop-Blinn)
0:28:20 A Brief Look at SDF Rendering
0:30:33 The Counting Method
0:31:48 Ray-Bézier Intersections
0:34:09 Point in Glyph Test
0:36:35 Shader Time
0:38:37 Floating Point Problems
0:41:22 The Evil Artifact Detector
0:45:36 The Closest Curve Method
0:50:48 Curve Splitting
0:54:31 Defeating the Evil Artifacts
0:58:58 Anti-Aliasing
1:02:47 Performance and Legibility
1:05:11 The Counting Method Returns
1:09:45 Outro
Coding Adventure: Rendering TextUnity Shape Editor Tool (3/4)[Unity 2017] Placing Objects with PhysicsUnity Create a Game Series (Introduction)A* Pathfinding (E10: threading)I Created a (terrible) Video Game ConsoleA* Pathfinding (E07: smooth weights)[C#] Delegates and Events (E02: events)Introduction to Game Development (E24: stealth game 2/3)[Ludum Dare 40] Splotch 2: Behind the ScenesProcedural Landmass Generation (E19: refactoring 1/2)Coding Adventure: Chess
Sebastian Lague |

Coding Adventure: Rendering Text

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER