Useful links
There are no well-condensed sources of 2D graphics knowledge. Rather, it is dispersed over a wide number of blogs, pages, articles, and brains. This page attempts to collate links to some of this information.
History
A brief history of 2D graphics is presented in this introduction for a course on digital typography.
Blogs
Mozilla gfx team (WebRender, design of 2D graphics APIs for the browser)
nical's blog (Lyon, WebRender, general 2D graphics API design considerations)
kvark's blog (WebRender, gfx-rs)
pcwalton's blog (Pathfinder 3)
raphlinus' blog (piet, 2D graphics API considerations, fonts, text rendering, splines, general 2D graphics API design considerations)
behdad's page (harfbuzz, fonts, text rendering)
2D Graphics API design
Rust 2D or 3D libs (that aren't kurbo
)
kurbo
)2D antialiasing and font rasterization
Trapezoidal pixel coverage algorithm
(Skia/Spinel team members) Path rendering by counting pixel coverage
Other
The Raster Tragedy at Low-Resolution Revisited: Opportunities and Challenges beyond “Delta-Hinting” ("RL: ...a justification for why Microsoft made exactly the choices they did 10+ years ago...")
Gamma Correction
Papers on approaches to efficient rendering of 2D graphics
(2017) (Lengyel) GPU-Centered Font Rendering Directly from Glyph Outlines (Slug Font Rendering Library)
Other links on approaches to efficient rendering of 2D graphics
Mathematics
Inclusion of a Point in a Polygon (winding number)
Repositories of interest
makepad (immediate mode 2D graphics)
spinel (hyper-optimized, Vulkan 1.1 2D graphics)
piet-metal (experimental compute approach to 2D graphics)
pathfinder (pcwalton's Pathfinder 3)
webrender (Mozilla gfx team's WebRender)
glyphy (behdad's signed distance field approach to font rendering)
msdfgen (multi-channel signed distance field generator)
xi-org Zulip discussions of interest
Last updated