Definicion De Xna
yataesto25 de Agosto de 2013
547 Palabras (3 Páginas)210 Visitas
2.1 XNA
Vamos a definir la plataforma que vamos a manejar para orientar el diagrama de
clases a la funcionalidad que ofrece XNA.
Definición
XNA no son el acrónimo de ningún nombre. Es el nombre que recibe la nueva
tecnología para la programación multimedia de videojuegos basada en DirectX y
manejada por .Net.
Se trata de un API de programación que simplifica y hace más intuitivo el uso de las
librerías nativas DirectX y, en consecuencia, simplifica de manera notable la
programación de videojuegos.
Estructura
En esencia, XNA se compone de dos librerías de ensamblados (dll) para .Net 2.0 que
manejan por debajo las librerías nativas del sistema de DirectX. Al situarse como una
librería sobre el Runtime de .Net, se beneficia de todas las mejoras que .Net
proporciona incluyendo el manejo de la memoria por el recolector de basuras, la
posibilidad de trabajar con cualquier lenguaje .Net y la multiplataforma.
Previamente a XNA existían las librerías de ensamblados Managed DirectX que, de
manera similar a XNA, permitían el acceso desde lenguajes .Net a las librerías nativas
de DirectX. En este caso, sin embargo, el acceso era mucho menos intuitivo y se
componía, básicamente, de un calco de las funciones de DirectX para .Net. Las
librerías Managed DirectX están en desuso y no se soportarán más en el futuro.
Modelo de programación orientado a videojuegos
El modelo de programación de XNA, al contrario que Managed DirectX, está orientado
a la programación de videojuegos. Para ello se definen una buena cantidad de clases
básicas de tipo matemático, necesarias para la programación gráfica, pero también
una nueva API y metodología de programación sobre estas clases que simplifica el
proceso de desarrollo.
4
El desarrollo de videojuegos con XNA está orientado a componentes. Los
componentes son, básicamente, pequeños trozos de código que cumplen una
funcionalidad concreta. Existen componentes gráficos como podría ser una bola
rebotando por la pantalla, una nave espacial o el mismo escenario del videojuego. No
obstante no todos los componentes tienen por qué ser gráficos. Podemos tener un
manejador de eventos o estados del videojuego, un generador de lógica u otros tipos
de componentes que no necesiten ser renderizados para usarse y cumplir su función.
Todos estos elementos heredan de la clase GameComponent (para los elementos no
gráficos) o de la clase DrawableGameComponente (para los elementos gráficos).
Una clase central (Game) se encarga de manejar todos los GameComponents que
han sido registrados. Así, un videojuego (Game) es igual a la suma de las
funcionalidades de todos los GameComponents que lo componen.
XNACommunity tiene como objetivo unir a los desarrolladores interesados en esta
tecnología para poner en común los GameComponents que han desarrollado y ser
capaces en el futuro de símplemente añadirlos a un videojuego y usarlos tal cual,
simplificando enormemente la tarea de programar videojuegos.
Multilenguaje
En la actualidad, XNA utiliza un IDE de programación basado en el IDE de C# 2005
Express Edition, por lo tanto la mayoría de los programas basados en XNA están
escritos en C#. Sin embargo, al tratarse de librerías de ensamblados totalmente
compatibles con .Net, pueden utilizarse con cualquier otro lenguaje .Net del mismo
modo que se utilizaría cualquier otra librería de ensamblados.
2.2. MÉTODOS A UTILIZAR
Una vez visto los componentes que podemos asignar en nuestro sistema hemos de
tener en cuenta que utiliza
...