[code camp 2009] desarrollo de juegos con xna (Ángel arcoraci)

29
XNA Game Studio Desarrollo de juegos para plataformas Windows y XBOX 360 Einyel Arcoraci CME - Argentina MSP - Mendoza

Upload: microsoft-argentina-y-uruguay-official-space

Post on 28-Jan-2018

703 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

XNA Game Studio

Desarrollo de juegos para plataformas Windows y XBOX 360

Einyel ArcoraciCME - ArgentinaMSP - Mendoza

Page 2: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

La historia de los videojuegos

Un legado de 40 años

Page 3: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Tennis for Two (1958)

Creado por William Higinbothan para el Brookhaven National Laboratory.Utilizó un osciloscopio para representar la cancha, la red y la pelota.

Page 4: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Spacewar! (1962)

Creado por Steve Rusell para el MIT. Desarrollado para la PDP-1.

Page 5: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

PONG

Page 6: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Pitfall

Page 7: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Super Mario Bros

Page 8: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Donkey Kong Country

Page 9: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Juegos para PC

First Person Shooter Real Time Strategy

Page 10: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Juegos para PCEvolución

First Person Shooter Real Time Strategy

Page 11: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Avances tecnológicos

• Mejor poder de procesamiento.

• Hardware especializado en aceleracion de video.

• Hardware especializado en calculos de física.

• Internet.

• Técnicas de desarrollo de juegos.

Page 12: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

¿ 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.

Page 13: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

¿ 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.

Page 14: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

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.

Page 15: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Content Pipeline

Page 16: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Content PipelineEn 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.).

Page 17: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

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.

Page 18: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

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.

Page 19: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

¿ Qué necesito para empezar ?

• Microsoft Direct X -

• Visual C# Express Edition -

• Microsoft XNA Game Studio -

Page 20: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Programación de juegos

¿ Cómo funcionan ?

Page 21: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Ciclo básico de los juegos

Page 22: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Ejemplo – Diseño de Clases

Page 23: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Ensamblaje de clases al juego

JuegoLoad()

Update()Draw()

Clase XLoad()

Update()Draw()

Page 24: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Anatomía de un Juego

Creando Space Shooter

Page 25: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Clases

SpaceShip

•Armas•Power Ups

•Etc.

Game1

1

*

Page 26: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

La Clase SpaceShip

AtributosPosicionTexturaVelocidad

MetodosLoad(){}Update(){}Draw(){}

cargamos la variable textura

aplicamos la logica de movimiento

mostramos los resultados

Page 27: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

Clases Anexas Fundamentales

• Vector2 – Vector3

• Texture2D

• GraphicsDevice

• ContentManager

• Keyboard

• GameTime

Page 28: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

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)

Page 29: [Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)

creators.xna.commircosoft.com/express

[email protected]