Videojuegos -
Las cosas de UnSitioWeb
|
Escrito por Vicengetorix
|
Pintar texto en OpenGL con GLetraUSW
GLetraUSW es una librerÃa, o más bien una clase con la que se puede escribir texto en pantalla dentro de un "rendering context" de OpenGL. Esto es útil ya que OpenGL no implementa una función simple, como printf, para dibujar texto... y ya que nos ponemos, GLetraUSW hace un poco más que lo imprescindible. Usa lo que se suele llamar "textured fonts", que no es más que usar una textura (o más) para guardar imagenes de las letras para luego dibujarlas. Hace uso de FreeType2 (la necesita) y VBO's de OpenGL, por lo tanto hace falta que la tarjeta gráfica soporte OpenGL 1.5, o por lo menos la extensión "GL_ARB_vertex_buffer_object". Por otro lado intenta ser de uso enormemente fácil, como todo en UnSitioWeb.
Asi las caracteristicas de GLetraUSW son:
- Uso de FreeType2, asi que es necesarÃa para usar GLetraUSW.
- Permite el uso de fuentes TTF(TrueType) u OTF(OpenType) que sean escalables.
- Usa solo los caracteres latinos, los del codigo ASCII extendido (y el del euro).
- Carga de fuentes desde fichero o desde memoria.
- Soporta Kerning.
- Usa solo texturas para almacenar y pintar el texto (lo que llaman "textured fonts").
- Uso de VBO (VertexBufferObjets) para pintar el texto en OpenGL.
- Pintado de texto rotándolo.
- Posibilidad de pintar el texto con sombra.
- Posibilidad de pintar el texto con borde de otro color (solo con color fijo).
- Obtención del BoundingBox del texto ya pintado o el texto que se va a pintar (si no está rotado).
Ahà van unos ejemplos.
Letra normal, sin sombra ni borde:

Letra con sombra:

Letra con borde:

Letra con borde y sombra:

Modo de empeo, pincha aquÃ: Como usar GLetraUSW
Descarga , pincha aquÃ: Descargar GLetraUSW
Este otro link es por si el fichero zipeado del anterior no se ve bien (en linux): GLetraUSW
|