Skip to content

OpenGL text using one vertex buffer, one texture and FreeType

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
COPYING
Notifications You must be signed in to change notification settings

rougier/freetype-gl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Freetype GL - A C OpenGL Freetype engine

Build Status Travis Build Status Appveyor

A small library for displaying Unicode in OpenGL using a single texture and a single vertex buffer.

Screenshot

Installation instructions

Code organization

Mandatory files

  • texture-font: The texture-font structure is in charge of creating bitmap glyphs and to upload them to the texture atlas.

  • texture-atlas: This structure is responsible for the packing of small regions into a bigger texture. It is based on the skyline bottom left algorithm which appear to be well suited for storing glyphs.

  • vector: This structure loosely mimics the std::vector class from c++. It is used by texture-atlas (for storing nodes), texture-font (for storing glyphs) and font-manager (for storing fonts). More information at: http://www.cppreference.com/wiki/container/vector/start

Optional files

  • markup: Simple structure that describes text properties (font family, font size, colors, underline, etc.)

  • font-manager: Structure in charge of caching fonts.

  • vertex-buffer: Generic vertex buffer structure inspired by pyglet (python). (more information at http://www.pyglet.org)

  • edtaa3func: Distance field computation by Stefan Gustavson (more information at http://contourtextures.wikidot.com/)

  • makefont: Allow to generate header file with font information (texture + glyphs) such that it can be used without freetype.

Contributors

  • Ryan.H.Kawicki (Initial CMake project)
  • Julian Mayer (Several bugfixes and code for demo-opengl-4.cc)
  • Sylvain Duclos (Android port)
  • Wang Yongcong (Improvements on the windows build and code review)
  • Jonas Wielicki (Bug report & fix on the CMakefile)
  • whatmannerofburgeristhis (Bug report in makefont)
  • Andrei Petrovici (Fine analysis of the whole code and report of potential problems)
  • Cristi Caloghera (Report on bad vertex buffer usage)
  • Andrei Petrovici (Code review)
  • Kim Jacobsen (Bug report & fix)
  • bsoddd (Bug report & fix)
  • Greg Douglas (Bug report & fix)
  • Jim Teeuwen (Bug report & fix)
  • quarnster (Bug report & fix)
  • Per Inge Mathisen (Bug report & fix)
  • Wojciech Mamrak (Code review, bug report & fix)
  • Wael Eloraiby (Put code to the C89 norm and fix CMakefile)
  • Christian Forfang (Code review, fix & patch for 3.2 core profile)
  • Lukas Murmann (Code review & fix for 3.2 core profile)
  • Jérémie Roy (Code review, fix and new ideas)
  • dsewtz (Bug report & fix)
  • jcgamestoy (Bug report & fix)
  • Behdad Esfahbod (Bug fix on harfbuzz demo)
  • Marcel Metz (Bug report & fix, CMmake no demo option, makefont parameters)
  • PJ O'Halloran (svn to git migration)
  • William Light (Face creation from memory)
  • Jan Niklas Hasse (Bug report & fix + README.md)
  • Pierre-Emmanuel Lallemant (Bug report & fix + travis setup)
  • Robert Conde (Bug report & fix)
  • Mikołaj Siedlarek (Build system bug fix)
  • Preet Desai (Bug report & fix)
  • Andy Staton (CMake fix and added namespace safeguard (avoiding glm collisions))
  • Daniel Burke (Removed GLEW dependency and fix problems with font licences)
  • Bob Kocisko (Added horizontal text alignment and text bounds calculation)
  • Ciro Santilli (Improve markdown documentation)

About

OpenGL text using one vertex buffer, one texture and FreeType

Topics

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
COPYING

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published