Introduccion A Xna By Lasa

2,117 views

Published on

Published in: Education
  • Be the first to comment

Introduccion A Xna By Lasa

  1. 1. INTRODUCCION <br /> A <br />Luis Antonio Sánchez Alfaro<br />Albacete DotNetClub<br />luisxkimo@gmail.com <br />http://labloguera.net/blogs/lsanchez<br />
  2. 2. PUNTOS DEL DIA<br />¿Qué es XNA?<br />¿Qué nos ofrece XNA?<br />Novedades y XNA 3.1<br />Capas en XNA<br />¿Qué Necesitamos?<br />Conceptos Básicos<br />¿De que forma se ejecuta un juego?<br />Colisiones<br />Components<br />Xbox Live CommunityGames<br />Demo<br />
  3. 3. ¿Qué es XNA?<br />XNA (XNA’s Not Acronymed) es una plataforma de desarrollo de videojuegos para estudiantes, programadores o aficionados a la creación de estos.<br />Esta basa da en .NET, en concreto en el sistema XNA Framework, que es el sistema de bibliotecas de .NET para el desarrollo de videojuegos.<br />
  4. 4. ¿Qué es XNA?<br />Utiliza DirectX9<br />Gratuito(XNA Framework + Visual Studio Express)<br />Compatible Windows Forms<br />Desarrollo para Múltiples Plataformas<br />
  5. 5. ¿Qué nos ofrece XNA?<br /><ul><li>Programación en C# (lenguaje sencillo, fácil debug)
  6. 6. Helpers: Boundings, fácil carga de modelos 2D y 3D
  7. 7. Funciones Input sencillas (Gamepad,Keyboard,Mouse)
  8. 8. XBox 360, PC y ZuneHD
  9. 9. Visual Studio 2008
  10. 10. GameComponents
  11. 11. Ayudas con Video y Audio.
  12. 12. Posibilidad de usar la GPU en lugar de la CPU</li></li></ul><li>Novedades XNA 3.1<br /><ul><li>Soporte MultitouchZuneHD
  13. 13. Soporte para la creación de avatares en Xbox (Pack animaciones gratuito para los avatares.)
  14. 14. Xbox LIVE PartySupport
  15. 15. Mejoras en las API’s de Audio y en el Content Pipeline (podemos añadir tipos propios)
  16. 16. Capacidad de reproducción de video(Intro juego)</li></li></ul><li>Las Capas de XNA<br />Content<br />Code<br />Component<br />XACT<br />XINPUT<br />XContent<br />Direct3D<br />Graphics<br />Audio<br />Input<br />Math<br />Application Model<br />Content Pipeline<br />Starter Kits<br />Storage<br />Games<br />Extended<br />Framework<br />Core<br />Framework<br />Gamer <br />Services<br />Networking<br />Platform<br />Legend<br />Community<br />XNA Provides<br />You Provide<br />
  17. 17.
  18. 18. ¿Qué Necesitamos para empezar?<br />
  19. 19. Conceptos Básicos<br />CONTENT PIPELINE: API que nos permite a nosotros desarrolladores introducir los elementos multimedia en nuestros videojuegos (videos, contenido 3d,graficos,etc).<br />El CPL nos permite un fácil acceso a estos recursos desde cualquier objeto utilizado en nuestro juego.<br />
  20. 20. Conceptos Básicos<br />PRINCIPALES FUNCIONES DENTRO DEL PROGRAMA<br /><ul><li>CLASE GAME 1</li></ul>Clase Principal del programa compuesta por las siguientes funciones:<br /><ul><li>Initialize()
  21. 21. LoadContent()
  22. 22. UnloadContent()
  23. 23. Update()
  24. 24. Draw()</li></li></ul><li>Conceptos Básicos<br /><ul><li>void Initialize()</li></ul>Método que utilizaremos para inicializar o dejar disponible todo lo que nos haga falta en el momento en el que se arranca el juego.<br /><ul><li>void LoadContent() y UnLoadContent()</li></ul>Metodos utilizados para cargar las texturas gráficas<br /> o para liberar la memoria de estas.<br />
  25. 25. Conceptos Básicos<br /><ul><li>void Update(GameTime gameTime)</li></ul>Cada unidad de tiempo, la lógica del juego se actualizara con lo que pongamos en este método.<br /><ul><li> void Draw(GameTime gameTime)</li></ul>Aquí situaremos los objetos que se irán dibujando en cada frame . Se actualiza a la misma velocidad que el Update. Nos permite cosas como elegir el fondo de pantalla que nos aparece al compilar recién abierto el proyecto.<br />
  26. 26. ¿De qué forma se ejecuta el juego?<br /><ul><li> En una aplicación corriente por lo general se trabaja mediante ordenes enviadas por el usuario en forma de eventos, tales como pulsar un botón, marcar una casilla, etc.</li></ul>Nuestro juego también esperara que le enviemos ordenes pero a diferencia de las aplicaciones normales, mientras no hagamos nada este NO estará parado, sino que se estará ejecutando lo que llamamos BUCLE DE JUEGO.<br />
  27. 27.
  28. 28. Colisiones<br /><ul><li> Una de las situaciones más comunes a tratar en un juego es el tema de las colisiones.
  29. 29. ¿Cómo lo hace XNA? Mediante las Bounding Box y BoundingSphere.</li></li></ul><li>Los Components<br />Los Components en un proyecto de juego son como agregados o “trozos de código” que han sido escritos por otros desarrolladores y que agregan diferentes funcionalidades u opciones nuevas nuestro programa, sin necesidad de volver a escribirlas nosotros, simplemente agregándolas en nuestro proyecto (Ejemplo: Menú de juego)<br />
  30. 30. Los Components<br />
  31. 31. XBOX Live CommunityGames<br />ServicioOnlinecreado por Microsoft a mediados de 2004 el cual permite la descarga de juegos para las consolas Xbox y Xbox 360, pero pagando una cantidad bastante menor que la de cualquier juego comercial.<br />En un principio el precio máximo de un juego era de 10€. 70% nosotros 30% MicroSoft.<br />Característica interesante: en este servicio podemos poner a la venta nuestros propios juegos creados en XNA para esta consola y ganar dinero con ellos.<br />
  32. 32. Enlaces de Interés<br />Recursos<br />http://www.microsoft.com/express/vcsharp/ (Visual C# Express Edition)<br />http://www.microsoft.com/downloads/ (Para descarga del XNA 3.0)<br />Comunidad<br />http://xna-para-torpes.blogspot.com<br />http://labloguera.net/blogs/csharp/<br />http://creators.xna.com/es-ES/(Articulos,Tutos,Foro,StarterKits)<br />http://www.codeplex.com/XNACommunity(Componentes,Juegos,Articulos)<br />
  33. 33. Fin y Demo<br />albacetedotnetclub@gmail.com<br />Y Visitad:<br />http://www.labloguera.net<br />

×