domingo, 15 de febrero de 2009

Cargar un gráfico en pantalla.

Ya hemos visto a la nave moviendose por la pantalla, ahora vamos a ir viendo paso a paso como crear nuestro juego usando XNA, luego podremos unir todos esos pasos, y tal vez, solo tal vez, nos quede algo bonito. Hoy vamos a ver como cargar un gráfico en pantalla para más adelante ir trabajando con él.

Es algo muy sencillo, lo primero es crear un proyecto nuevo, luego añadimos el gráfico en cuestión al proyecto, para eso vamos al explorador de soluciones y en la carpeta de proyecto "Content" clicamos con el botón derecho, en las opciones que aparecen seleccionamos añadir > archivo existente. Selecciona el fichero que quieras cargar en el juego.

[caption id="attachment_231" align="alignnone" width="411" caption="Añadir un archivo existente"]Añadir un archivo existente[/caption]

Podemos usar imagenes jpg, bmp, png... yo normalmente uso el formato .png por que es un formato que comprime bien, además le puedo poner transparencias.

Ahora ya tenemos el fichero listo para ser cargado, haz doble click en el fichero Game1.cs para poder ver y modificar su código. Crea una variable de tipo Texture2D, te ha de quedar algo así:
[code language="csharp"]
GraphicsDeviceManager graphics;
SpriteBatch spriteBatch;
Texture2D sprite;
[/code]

Ahora en el metodo LoadContent cargaremos el gráfico:
[code language="csharp"]
protected override void LoadContent()
{
// Create a new SpriteBatch, which can be used to draw textures.
spriteBatch = new SpriteBatch(GraphicsDevice);
//Cargamos el gráfico que hemos hañadido al proyecto, no es necesario poner la extensión del fichero
sprite = Content.Load("xnalogo");
}
[/code]

Por último en el metodo Draw le decimos que "pinte" el gráfico que hemos cargado en la pantalla:
[code language="csharp"]
protected override void Draw(GameTime gameTime)
{
GraphicsDevice.Clear(Color.CornflowerBlue);

spriteBatch.Begin();

spriteBatch.Draw(sprite, new Rectangle(0, 0, sprite.Width, sprite.Height), Color.White);

spriteBatch.End();

// TODO: Add your drawing code here

base.Draw(gameTime);
}
[/code]

Ahora ya puedes ejecutar el código y ver tú gráfico en la pantalla.

Descargar el proyecto con el código.

No hay comentarios:

Publicar un comentario