domingo, mayo 06, 2007

Tarea7_________XNA PARTE 1



Image




Con historias simples es que surge la industria de los videojuegos, y precisamente este tipo de juegos simples, pero contagiosos, se conocen actualmente como juegos ocasionales o casual gaming. Lo interesante de dicha tendencia en videojuegos, no es tanto la capacidad de poderlos jugar una y otra vez, sino que además, puedes disfrutarlos en diferentes dispositivos y competir contra diferentes adversarios en línea.

En este sentido, el Xbox 360 abrió un mercado muy interesante a través de su Xbox Live, con el que los usuarios pueden descargar de Internet contenidos y juegos. Sin embargo, esto presentó dos problemas principales; el primero es que, para desarrollar juegos para diferentes plataformas (por ejemplo, Xbox y PC), se necesitaban bases de código diferentes e independientes. El segundo problema, es que la capacidad de desarrollar juegos para consolas sólo estaba disponible para las grandes casas desarrolladoras de juegos, utilizando kits de desarrollo caros y con disponibilidad limitada. Esto eliminaba la posibilidad de que un desarrolaldor casual pudiera hacer un juego para Xbox, por ejemplo. Para resolver tales problemas, se creó XNA.

XNA es un framework basado en .NET, que facilita el desarrollo de videojuegos y permite usar una misma base de código para tanto plataforma Xbox como Windows

NA Game Studio permite a estudiantes y a programadores de juegos, aficionado a crear juegos que usando .NET uncionen en Windows y su Xbox 360. El sistema XNA Framework es el sistema de las bibliotecas de .NET con las cuales los programadores disfrutaran construir sus juegos. Esta disponible la primera versión beta desde agosto 30 del 2006.




Figura 1. Aquí se ilustran las capas que componen el XNA Framework.

Para desarrollar juegos basados en el framework XNA, se utiliza XNA Game Studio, que es un ambiente de desarrollo basado en Visual Studio C#. XNA Game Studio estará disponible en dos versiones:
•XNA Game Studio Express. Versión gratuita basada en Visual Studio Express C# dirigida a los desarrolladores casuales o por hobby. Actualmente está disponible como beta, y en cualquier momento se liberará la versión final.
•XNA Game Studio Professional. Dirigido a profesionales que crean juegos para comercializar. Se espera que sea lanzado en el segundo semestre de 2007.

Cuando estás desarrollando un videojuego, lo más complejo se encuentra en generar el código, que se va a encargar de operar las controladoras de videos, las interfaces de entrada o controles, los eventos a los que debe de responder, etcétera. Toda esta lógica, la administra XNA, de tal manera que, es mucho más fácil comenzar a desarrollar tu videojuego usando las interfaces que te provee, además, cuando lo instalas, vienen pre cargadas una serie de plantillas que te permiten comenzar a crear tu juego en menos de 5 minutos.

Capas de XNA
Ahora, ya que entendimos qué onda con XNA, vamos a verlo un poco más a detalle. El framework está organizado en 4 capas orientadas a diferentes propósitos:
•La capa base del framework XNA es la capa denominada de “Plataforma”, que es donde se maneja toda la lógica de bajo nivel, por ejemplo lo que es Direct 3D, XACT, etcétera. Digamos que es como el cerebro de XNA.
•Encima de la capa de plataforma se encuentra la del framework básico, o central. Aquí es donde se procesa la información general del videojuego, es decir, el audio, los procesamientos matemáticos, almacenamiento, etcétera.
•Para facilitar el desarrollo de los juegos, se diseñó un conjunto de interfaces que forman la capa denominada, framework extendido.
•La última capa es la de juego, que es donde se lleva toda la lógica como tal. Lo interesante es que tú puedes generar componentes que permitan que los demás puedan acceder a tu juego y configurar cómo se desarrolla. Por ejemplo, podrías hacer una interfaz para que pudieran descargar nuevas naves espaciales, o en un ambiente un poco más comercial, podrías vender espacio publicitario en tu videojuego. Imagina que pudieras rentarle a una compañía de refrescos, un espacio para que publiciten sus productos, y al término del periodo, venderle ese mismo espacio a una compañía de automóviles, y lo único que cambiaría en tu juego, es la manera en la que se consume dicho componente. Sería genial, ¿no?

Para dar inicio
Ya que conoces cómo está diseñada a gran escala la arquitectura de XNA, muy seguramente tu siguiente pregunta sería: ¿Cómo lo empiezo a utilizar?

Lo primero que tienes que hacer es descargar Visual Studio Express C#. Lo puedes encontrar en el sitio msdn.microsoft.com/vstudio/express/visualcsharp. Una vez que instales C# Express necesitas descargar el Game Studio Express de XNA, desde el sitio msdn.microsoft.com/directx/xna/gse.

Una vez que instalaste los programas, estarás listo para comenzar a desarrollar tu juego. Te recomiendo que para comenzar te bases en alguna de las plantillas de videojuegos que ya vienen instaladas, esto te va a permitir entender cómo está estructurado el videojuego.

Figura 2. Interfaz de desarrollo de Game Studio Express de XNA.


Figura 3. Plantilla de desarrollo Space War.


Figura 4. Juego en ejecución.

Lo importante, es que sepas que, generar un videojuego, no es cosa sencilla, ya que tienes que diseñar la historia del juego, todo el arte, las animaciones, objetos en 3D, el audio, y ya una vez que tienes todos estos componentes, comienza lo divertido: integrarlos. Pero no te desanimes, ya verás que con un poco de práctica, pronto estarás desarrollando juegos divertidos, que podrás compartir con tus amigos o incluso, jugarlos en línea.

Game Studio Express de XNA, desde el sitio msdn.microsoft.com/directx/xna/gse.

Una vez que instalaste los programas, estarás listo para comenzar a desarrollar tu juego. Te recomiendo que para comenzar te bases en alguna de las plantillas de videojuegos que ya vienen instaladas, esto te va a permitir entender cómo está estructurado el videojuego.
Lo importante, es que sepas que, generar un videojuego, no es cosa sencilla, ya que tienes que diseñar la historia del juego, todo el arte, las animaciones, objetos en 3D, el audio, y ya una vez que tienes todos estos componentes, comienza lo divertido: integrarlos. Pero no te desanimes, ya verás que con un poco de práctica, pronto estarás desarrollando juegos divertidos, que podrás compartir con tus amigos o incluso, jugarlos en línea.

Conclusión
Desarrollar un videojuego involucra tomar en cuenta muchos aspectos. Afortunadamente, XNA elimina algo de esa complejidad y es una excelente opción para desarrollar juegos tanto para Xbox como Windows. Lo mejor de todo es que XNA Game Studio Express es gratis, así que si eres un desarrollador de software y conoces algo de C#, anda ya, y desarrolla tus primeros juegos.