HeadlinesBriefing favicon HeadlinesBriefing.com

SDF vs MSDF vs Slug: Guía de renderizado de texto en GPU

Hacker News •
×

¿Cómo elijo un algoritmo de renderizado de texto entre SDF, MSDF, Slug, atlas de texturas o Rive? El texto parece simple hasta que tienes que dibujarlo tú mismo. Una letra es un conjunto de contornos: bucles cerrados de líneas rectas y curvas de Bézier, rellenos según una regla de enrollado. Dibujar eso en una CPU en un mapa de bits está resuelto. Dibujarlo en una GPU, nítidamente, a cualquier tamaño, bajo cualquier transformación 3D, mientras el texto cambia cada fotograma, no lo está.

La mayoría de los motores evitan la versión difícil horneando glifos en texturas de antemano. En 2017, Eric Lengyel publicó Slug, que renderiza glifos directamente desde contornos en el sombreador de fragmentos, sin atlas de texturas y sin teselación por fotograma. Lengyel lo patentó en 2019, y el 17 de marzo de 2026 dedicó esa patente al dominio público. Esta guía cubre cómo funciona el renderizado de texto en GPU, desde el atlas de mapas de bits hasta Slug.

El método 1, el atlas de texturas, rasteriza cada glifo una vez en una textura compartida. Es rápido, pero los problemas aparecen al escalar: agrandar más allá del tamaño horneado y el glifo se vuelve borroso. Cada tamaño que desees nítido es otro atlas, y idiomas como chino, japonés y coreano causan un desastre de memoria. El método 2, campos de distancia con signo (SDF), almacena la distancia al borde más cercano. Debido a que la distancia interpola suavemente, puedes escalar una textura SDF pequeña dramáticamente y obtener un borde limpio. Durante mucho tiempo, este fue el predeterminado para texto de interfaz nítido, pero un SDF sigue siendo una textura horneada.