Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/go-gl/gltext
OpenGL text rendering utilities.
https://github.com/go-gl/gltext
Last synced: about 2 months ago
JSON representation
OpenGL text rendering utilities.
- Host: GitHub
- URL: https://github.com/go-gl/gltext
- Owner: go-gl
- License: bsd-3-clause
- Created: 2012-10-12T01:55:00.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2019-04-15T08:17:55.000Z (over 5 years ago)
- Last Synced: 2024-06-18T18:35:00.808Z (6 months ago)
- Language: Go
- Size: 146 KB
- Stars: 69
- Watchers: 3
- Forks: 24
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## gltext
**Note**: This package is experimental and subject to change.
Use at your own discretion.The gltext package offers a simple set of text rendering utilities for OpenGL
programs. It deals with TrueType and Bitmap (raster) fonts. Text can be
rendered in various directions (Left-to-right, right-to-left and top-to-bottom).
This allows for correct display of text for various languages.The package supports the full set of unicode characters, provided the loaded
font does as well.### TODO
* Have a look at Valve's 'Signed Distance Field` techniques to render
sharp font textures are different zoom levels.* [SIGGRAPH2007_AlphaTestedMagnification.pdf](http://www.valvesoftware.com/publications/2007/SIGGRAPH2007_AlphaTestedMagnification.pdf)
* [Youtube video](http://www.youtube.com/watch?v=CGZRHJvJYIg)
More links to info in the youtube video description.
An alternative might be a port of [GLyphy](http://code.google.com/p/glyphy/)### Known bugs
* Determining the height of truetype glyphs is not entirely accurate.
It is unclear at this point how to get to this information reliably.
Specifically the parts in `LoadTruetype` at truetype.go#L54+.
The vertical glyph bounds computed by freetype-go are not correct for
certain fonts. Right now we manually offset the value by added `4` to
the height. This is an unreliable hack and should be fixed.
* `freetype-go` does not expose `AdvanceHeight` for vertically rendered fonts.
This may mean that the Advance size for top-to-bottom fonts is incorrect.### Dependencies
This packages uses [freetype-go](https://code.google.com/p/freetype-go) which is licensed
under GPLv2 e FTL licenses. You can choose which one is a better fit for your
use case but FTL requires you to give some form of credit to Freetype.orgYou can read the [GPLv2](https://code.google.com/p/freetype-go/source/browse/licenses/gpl.txt)
and [FTL](https://code.google.com/p/freetype-go/source/browse/licenses/ftl.txt)
licenses for more information about the requirements.### Usage
go get github.com/go-gl/gltext
Refer to [go-gl/examples/gltext][ex] for usage examples.
[ex]: https://github.com/go-gl/examples/tree/64b743f99c4e9151c09563e9be3339441eb9296b/gltext
### License
Copyright 2012 The go-gl Authors. All rights reserved.
Use of this source code is governed by a BSD-style
license that can be found in the LICENSE file.