|
vdr-plugin-softhddevice-drm-gles 1.6.4-d0291bb
|
OpenGL OSD Texture Atlas for a Font. More...
#include <openglosd.h>
Public Member Functions | |
| cOglFontAtlas (FT_Face, int) | |
| virtual | ~cOglFontAtlas (void) |
| cOglAtlasGlyph * | GetGlyph (int) const |
| int | Height (void) const |
| int | Width (void) const |
| void | BindTexture (void) |
Private Attributes | |
| GLuint | m_texture = 0 |
| int | m_width = 0 |
| int | m_height = 0 |
| cOglAtlasGlyph * | m_pGlyph [MAX_CHARCODE - MIN_CHARCODE+1] |
OpenGL OSD Texture Atlas for a Font.
Represents a texture atlas keeping a range of glyphs on one texture per font and size instead of having one texture per glyph. This technique makes dealing with huge amounts of glyphs faster, because the bottleneck (texture up-/download/binding) is reduced at a minimum. Its faster to deal with one single bigger texture than many smaller ones.
The font atlas is prepared once at the time the new font or sized is accessed for the first time. We may have a little delay at startup, which is negligible.
Definition at line 180 of file openglosd.h.
Definition at line 289 of file openglosd.cpp.
References GL_CHECK, L_OPENGL, LOGDEBUG2, LOGERROR, LOGWARNING, m_height, m_pGlyph, m_texture, m_width, MAX_CHARCODE, and MIN_CHARCODE.
|
virtual |
Definition at line 449 of file openglosd.cpp.
References GL_CHECK, m_pGlyph, m_texture, MAX_CHARCODE, and MIN_CHARCODE.
Definition at line 468 of file openglosd.cpp.
| cOglAtlasGlyph * cOglFontAtlas::GetGlyph | ( | int | sym | ) | const |
Definition at line 461 of file openglosd.cpp.
References m_pGlyph, MAX_CHARCODE, and MIN_CHARCODE.
Definition at line 185 of file openglosd.h.
References m_height.
Definition at line 186 of file openglosd.h.
References m_width.
|
private |
Definition at line 191 of file openglosd.h.
Referenced by cOglFontAtlas(), and Height().
|
private |
Definition at line 192 of file openglosd.h.
Referenced by cOglFontAtlas(), GetGlyph(), and ~cOglFontAtlas().
|
private |
Definition at line 189 of file openglosd.h.
Referenced by BindTexture(), cOglFontAtlas(), and ~cOglFontAtlas().
|
private |
Definition at line 190 of file openglosd.h.
Referenced by cOglFontAtlas(), and Width().