chlumsky/msdfgen

Multi-channel signed distance field generator

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 5 minutes ago
Added to GitGenius on September 14th, 2026
Created on April 24th, 2016
Open Issues & Pull Requests: 8 (+0)
GitHub issues: Enabled
Number of forks: 517
Total Stargazers: 4,929 (+0)
Total Subscribers: 107 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 6.6 hours
Mean response time: 8.9 days
90th percentile: 25.0 days
Tracked items: 23

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 4
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 418 days
Stale 30+ days: 3
Stale 90+ days: 2

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

msdfgen is a utility for generating signed distance fields from vector shapes and font glyphs for use in real-time graphics rendering.

The tool solves the problem of efficiently representing vector shapes as textures that can be rendered at any scale without quality loss. Traditional monochrome signed distance fields, popularized by Valve's work, struggle to preserve sharp corners at small sizes. msdfgen addresses this by using a multi-channel approach that encodes distance information across all three color channels, allowing it to reproduce sharp corners nearly perfectly while maintaining the efficiency benefits of distance field rendering. The core module contains all key algorithms with no external dependencies, while optional extensions add support for loading fonts via FreeType, parsing SVG files with TinyXML2, and saving PNG output.

Developers should choose this tool if they need to render text or vector graphics efficiently in games or graphics applications where texture-based rendering is preferred over rasterization. The project suits font atlas generation and any scenario where vector shapes must be rendered at variable scales. The tool offers multiple modes: conventional signed distance fields, perpendicular distance fields, multi-channel distance fields as the default, and a combined multi-channel with true signed distance in the alpha channel. It can be used as a library through the provided headers or as a standalone console program, with prebuilt Windows binaries available for immediate use.

Development activity shows consistent maintenance with regular updates to the changelog. The project maintains a clean separation between its dependency-free core and optional extensions, allowing users to integrate only what they need. The inclusion of comprehensive documentation, including a Master's thesis explaining the underlying method, reflects attention to helping users understand the technology. The availability of both library and command-line interfaces demonstrates responsiveness to different integration needs.