2. AGENDA
Mostrar como se manejan las cadenas de texto.
Descubrir la diferencia entre fuentes de bitmap
y fuentes de vector.
Encontrar la manera de crear las fuentes en un
programa XNA.
Adicionar una fuente a un juego y usarlo para
mostrar un mensaje.
Descubrir como las propiedades de las fuentes
son manejadas y como crear diferentes tipos de
texto
3. TEXTOS Y COMPUTADORAS
Las primeras computadoras no imprimían la
totalidad de las fuentes.
La salida era mostrada por luces o perforado sobre
papel
Luego los dispositivos se restringieron por los
diseños físicos de mecanismos de las cabezas
de impresión y caracteres construidos dentro de
los dispositivos de texto.
Recientemente existen computadoras lo
suficientemente poderosas para administrar un
rango de fuentes y tipos de tamaños.
4. FUENTES
Una fuente es un
conjunto de
caracteres diseñados
en un estilo particular.
Existen diferentes
tipos de diseño.
Las más populares
son:
Arial
Times new roman
Courier
5. FUENTES DE BITMAP
Las primeras fuentes
eran hechas de un
conjunto de
imágenes, uno por
cada carácter,
dibujaba en un
tamaño particular.
Estas fuentes de
bitmaps son difíciles
de escalar
6. FUENTES DE VECTORES
Las fuentes de vectores
son creadas uniendo
puntos con líneas.
Las computadoras usan
una ecuación para
trabajar la posición de
cada punto en el
carácter.
Esto hace que escalar
sea muy fácil, pero hace
mas trabajo para la
computadora.
7. LAS FUENTES EN XNA
Una fuente en un programa XNA es un ítem de
contenido.
Es una fuente de bitmap, la cual es renderizada
en un tipo particular y dibujada como un sprite.
Esta es la razón por la que XNA puede dibujar
texto lo mas rápido posible.
El Content Manager genera el SpriteFont de un
programa para Windows.
Esto se hace automáticamente.
8. ADICIONAR UN RECURSO DE FUENTES
Un recurso de fuente
es adicionado de
manera similar a una
imagen.
La diferencia es que
se necesita crear un
nuevo item.
Esto abrirá el cuadro
de dialogo “Adicionar
nuevo Item – Content”
9. CREAR UN NUEVO SPRITEFONT
El cuadro de dialogo, hace que
seleccionemos el tipo a adicionar.
Para una fuente SpriteFont y hacer click
10. ADICIONAR EL RECURSO
Una vez el font ha sido
adicionado, este
aparecerá en el Content
como una parte de la
solución.
Es posible adicionar
múltiples fonts, si el
juego necesita tener
diferentes tamaños o
estilos de texto.
El Content Manager del
XNA los administra de
manera automática
11. CONSOTRUIR UN SPRITEFONT
Cuando un programa es construido, el
Content Manager ejecuta la siguiente
secuencia:
Ve en el archivo de recursos de font, que tipo de
fuente se usará y que tipo de caracteres son
requeridos.
Utiliza las fuentes de Windows para generar un
conjunto de bitmaps (el actual SpriteFont) y
colocarlos en un archivo.
Copia el archivo del SpriteFont que es
producido en el lugar correcto para que el juego
los utilice.
12. CONFIGURAR EL SPRITEFONT
La configuración de la
fuente y el tamaño del
spritefont son
concatenados en el
archivo SpriteFont.
Es posible abrir este
archivo y editarlo con
le VS.
El archivo es creado
en el formato XML
13. XML
El XML es el “Lenguaje de marcado
extensible”
Eso significa: “La manera ce colocar cosas
dentro de un archivo que la computadora y el
usuario puedan antender”.
Es un formato que le da a los datos una
estructura.<?xml version="1.0" encoding="us-ascii" ?>
<highscore game="Breakout">
<playername>Rob Miles</playername>
<score>1500</score>
</highscore>
14. EL XML DEL SPRITEFONT
Hay diversas propiedades que se pudieran
cambiar
Estas son dos de las mas importantes
<!—
Modify this string to change the font that will be imported.
-->
<FontName>Kootenay</FontName>
<!—
Size is a float value, measured in points. Modify this value
to change the size of the font.
-->
<Size>14</Size>
16. ADICIONAR LOS VALORES AL MUNDO DEL
JUEGO
Si un juego necesita mostrar mensajes de texto,
se necesitan variables SpriteFont como parte
del juego.
Estas serán usadas cuando los caracteres sean
usados.
Un SpriteFont es un bit tal como Texture2D, con
la excepción que este contiene un conjunto de
caracteres diseñados en lugar de una sola
imagen
Este sera usado con el SpriteBatch para dibujar
// Game World
SpriteFont font;
17. CARGAR EL SPRITEFONT
El mejor lugar para colocar un SpriteFont es en
el método LoadContent.
El formato de la carga es similar a cargar una
imagen.
Esta vez preguntamos al método Load para
que busque un SpriteFont en vez de un
protected override void LoadContent()
{
// Create a new SpriteBatch
spriteBatch = new SpriteBatch(GraphicsDevice);
font = Content.Load<SpriteFont>("SpriteFont1");
}
18. DIBUJAR TEXTO CON EL METODO DRAWSTRING
El SpriteBatch provee un método llamado
DrawString, el cual dibuja un string de texto
en la pantalla.
DrawString contiene:
El font a usar para dibujar el texto
El string de texto a dibujar
El vector identificando la posición mostrada para
iniciar el dibujo.
El color para dibujar el texto
19. VECTORES
Un vector es una forma de empaquetar valores
juntos que describen una posición particular relativa
al origen.
Pueden ser en 2D (x,y) y 3D (x,y,z)
Pueden ser usados para describir una dirección.
Es necesario un vector 2D para la posición del texto.
El tipo 2D en XNA es llamado Vector2
La sentencia mostrada crea un vector configurado a
20, 30.
Vector2 textVector = new Vector2(20, 30 );
22. RESUMEN
Las computadoras pueden administrar font de
caracteres como bitmaps (una imagen que almacena
una figura de caracteres) o vectores (un conjunto de
líneas y posiciones que describen como dibujar un
carácter)
XNA considera un font como un conjunto de bitmaps
que han sido producidos por el Content Manager
derivado un vector font cuando el programa es
creado.
Las propiedades del font son almacenadas por XNA
en XML.
Las fonts son cargadas y usadas por un juego de
manera similar a las texturas.
23. Los font de bitmaps son los tipos mas lentos
de dibujar.
Un juego XNA puede solamente contener un
font.
Un font vector describe como dibujar
caracteres.
XML es solo utilizado para los archivos
SpriteFont
El Content Manager de XNA dibuja el font en
la pantalla
24. Los font de bitmaps son los tipos mas lentos
de dibujar.
Un juego XNA puede solamente contener un
font.
Un font vector describe como dibujar
caracteres.
XML es solo utilizado para los archivos
SpriteFont
El Content Manager de XNA dibuja el font en
la pantalla
25. Los font de bitmaps son los tipos mas lentos
de dibujar.
Un juego XNA puede solamente contener un
font.
Un font vector describe como dibujar
caracteres.
XML es solo utilizado para los archivos
SpriteFont
El Content Manager de XNA dibuja el font en
la pantalla
26. Los font de bitmaps son los tipos mas lentos
de dibujar.
Un juego XNA puede solamente contener un
font.
Un font vector describe como dibujar
caracteres.
XML es solo utilizado para los archivos
SpriteFont
El Content Manager de XNA dibuja el font en
la pantalla
27. Los font de bitmaps son los tipos mas lentos
de dibujar.
Un juego XNA puede solamente contener un
font.
Un font vector describe como dibujar
caracteres.
XML es solo utilizado para los archivos
SpriteFont
El Content Manager de XNA dibuja el font en
la pantalla
28. Los font de bitmaps son los tipos mas lentos
de dibujar.
Un juego XNA puede solamente contener un
font.
Un font vector describe como dibujar
caracteres.
XML es solo utilizado para los archivos
SpriteFont
El Content Manager de XNA dibuja el font en
la pantalla