• Stars
    star
    646
  • Rank 69,672 (Top 2 %)
  • Language
    C++
  • License
    Other
  • Created over 12 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

GLyphy is a signed-distance-field (SDF) text renderer using OpenGL ES2 shading language.

GLyphy is a signed-distance-field (SDF) text renderer using OpenGL ES2 shading language.

The main difference between GLyphy and other SDF-based OpenGL renderers is that most other projects sample the SDF into a texture. This has all the usual problems that sampling has. Ie. it distorts the outline and is low quality.

GLyphy instead represents the SDF using actual vectors submitted to the GPU. This results in very high quality rendering, though at a much higher runtime cost.

See this video for insight to how GLyphy works:

http://vimeo.com/behdad/glyphy

Dicussions happen on:

https://groups.google.com/forum/#!forum/glyphy


On GNOME3 and possibly other systems, if the vsync extension is not working (ie. pressing v in the demo doesn't have any effect), try running with vblank_mode=0 env var.

Compilation instructions on Mac OS X

  1. Install Xcode and command line tools (as of Xcode 4.3.x, from   within Preferences -> Downloads).
  2. Install MacPorts.
  3. sudo port install automake autoconf libtool pkgconfig freetype
  4. ./autogen.sh
  5. make

Compilation instructions on Windows

See appveyor.yml, basically first get vcpkg and install glew, freetype and freeglut on it, then open win32\glyphy.sln with Visual Studio.

Compilation instructions for emscripten

Assuming you have installed emscripten and have its tools on path,

  1. NOCONFIGURE=1 ./autogen.sh
  2. CPPFLAGS='-s USE_FREETYPE=1' LDFLAGS='-s USE_FREETYPE=1' emconfigure ./configure
  3. make EXEEXT=.html GL_LIBS= GLUT_LIBS=
  4. The result will be located on demo/.libs/glyphy-demo.html (not demo/glyphy-demo.html)

More Repositories

1

bicon

BiCon—The Bidirectional Console
C
160
star
2

color-emoji

Tool to build color fonts using Google color-font format
Python
56
star
3

fontconfig

FontConfig
C
34
star
4

git.mk

Makefile to automatically generate .gitignore files for autotools-based projects
Makefile
31
star
5

slippy

Simple PyCairo-based presentation tool
Python
23
star
6

cairo

Clone of cairo graphics library
C
13
star
7

freetype

My FreeType playground; most patches make it upstream within days
C
11
star
8

rira-www

RiRa—Persian Digital Library: Website frontend
PHP
9
star
9

ftthread

Test case for FreeType thread-safety (or lack thereof)
C
8
star
10

generate-avar2

Build script for RobotoFlex with avar2 table
Python
6
star
11

glyphy-emscripten

GLyphy compiled via emscripten
HTML
5
star
12

waveflag

Tool to "wave" PNG flag images
C
5
star
13

glossy

GLossy is a limited OpenGL ES2 pipeline implementation in C++
C++
4
star
14

matrix4x4-c

Basic set of 4x4 matrix operations. Can be used to replace OpenGL fixed-pipeline matrix operations.
C
4
star
15

state-of-text-rendering

This is the "source" for http://behdad.org/text whitepaper
HTML
3
star
16

pascalalgs

Miscellaneous algorithms and data structures implemented in Pascal from 2000 / 2001!
Pascal
3
star
17

box2d

Automatically exported from code.google.com/p/box2d
C
2
star
18

playground

Misc stuff
Python
2
star
19

use-syllables

Use Universal Shaping Engine code from HarfBuzz to segment text into syllables
C++
2
star
20

fribidi-vs-unicode

Tool to test GNU FriBidi against Unicode's BidiTest.txt test suite
C
2
star
21

colrv2-playground

COLR templatizer ala https://github.com/googlefonts/colr-gradients-spec/issues/371
Python
1
star
22

bprobe

bprobe is a simple tool to probe shared-library calls
C
1
star
23

fc-monitor

Piece of code to monitor fontconfig font directories and configuration for changes
C
1
star
24

glyphcoords

Test repo for optimizing glyph outline coordinate storage in Python
Python
1
star
25

googlefontdirectory

Automatically exported from code.google.com/p/googlefontdirectory
1
star
26

behdadcalendar

Temporary repo for testing Taghvim
PHP
1
star
27

noto-color-emoji-svg-test

Test fonts for NotoColorEmoji in SVG and SVGZ format in OpenType
HTML
1
star
28

google-fonts-ofl-interpolatable-results

Test results of `fonttools var.Libinterpolatable` on Google Fonts OFL collection
Shell
1
star
29

noto-nastaliq-urdu-test-page

Source for http://behdad.org/urdu test page
HTML
1
star
30

pangox-compat

This is a compatibility library providing the obsolete pangox library
C
1
star
31

malloc-stats

Small LD_PRELOAD library to show allocation stats
C
1
star
32

mlo

Sketch of a meta loop optimizer; ignore for now, nothing useful right now
C++
1
star