3. TennisforTwo (1958) Creado por William Higinbothan para el BrookhavenNationalLaboratory. Utilizó un osciloscopio para representar la cancha, la red y la pelota.
11. Avances tecnológicos Mejor poder de procesamiento. Hardware especializadoen aceleracion de video. Hardware especializado en calculos de física. Internet. Técnicas de desarrollo de juegos.
12. ¿ Qué es XNA ? Framework basado en .NET 2.0 que contiene una librería de clases para el desarrollo de juegos. CLR optimizada para requerimientos de juegos. Multiplataforma: Windows XP SP2, Windows Vista, Windows 7, XBOX 360 y ZUNE. Programación en C# .NET.
13. ¿ Por qué utilizar XNA ? Mediante el “content pipeline” apunta a que los creadores de juegos se enfoquen en la lógica del mismo y no en crear un “parser” o importer para cada recurso que utiliza. Programación Orientada a Objetos. C# .NET. Gratis.
14. Content Pipeline El artista diseñador crea los recursos y el CP permite traerlos a un formato común para usarlos en runtime. Evita la creación de importers y procesors particulares para cada tipo de archivo que se necesite usar (aunque lo permite). El desarrollador se enfoca en la lógica o gameplay.
16. Content Pipeline En tiempo de desarrollo, se manejan los recursos originales. Editamos sando photoshop, blender, 3d studio, etc. Cuando se traen al juego, la informacion se transforma en entidades manejables por XNA (vertices, splines, etc.).
17. Content Pipeline Mediante los “procesors” los elementos son compilados y analizados. Por ejemplo un modelo 3D puede tener informacion de animacion que tiene que ser analizada y guardada en frames.
18. Content Pipeline Al final del proceso todos los recursos son entendidos por el manejador de contenidos (ContentManager) y pueden ser usados y asociados a su clases.
19. ¿ Qué necesito para empezar ? Microsoft Direct X - Gratis Visual C# Express Edition - Gratis Microsoft XNA Game Studio - Gratis
29. Clases en SpaceShip Debe ocupar un lugar en el espacio (Vector2) Debe usar una textura para ser representada (Texture2d y SpriteBatch) Debe responder al input (Keyboard) Debe poseer lógica al disparar los misiles (GameTime)