SlideShare una empresa de Scribd logo
XNA Game Studio
Introducción
Juan Carlos Zuluaga
Que es xna?
 Microsoft XNA es un conjunto de herramientas con un entorno de
ejecución provisto por Microsoft que facilita el desarrollo y manejo
de videojuegos. XNA se enfoca de librar a los desarrolladores de
juegos de escribir mucho código repetitivo pero con ligeros
cambios, y traer diferentes aspectos de producción del juego en un
solo sistema.
Mecanismo XNA
Método Initialize
 El método Initialize es usado para inicializar variables y otros objetos
asociados con el objeto Game1. Los objetos del dispositivo grafico será
inicializados en este punto y pueden ser usados en el métodos Initialize para
ayudarte a inicializar otros objetos que dependen en la configuración.
Utilizarás este método para inicializar valores de puntuación y otros valores
afines.
Método LoadContent
 El método LoadContent es invocado después del método Initialize, de la
misma forma para el caso que el contenido grafico debe ser recargado (Por
ejemplo cuando el dispositivo grafico debe ser reiniciado debido a que el
jugador ha cambiado la configuración grafica del juego, o algo por el estilo).
El método LoadContent es donde se carga todos los gráficos y otro contenido
requerido por el juego, incluyendo imágenes, modelos, sonidos, etc.
Game Loop (Método Update y Metodo
Draw)
 Despues que culmina el método LoadContent, el juego entra en un estado
conocido como Game Loop, o bucle de juego. Casi todos los juegos entran en
algún tipo de bucle de juego, independientemente si están escritos en XNA o no.
Esta área de código difiere del típico entorno de programación de juegos, y para
algunos desarrolladores les puede tomar algo de tiempo acostumbrarse.
 En esencia, un Game Loop consiste en una serie de métodos que son invocados
una y otra vez hasta que el juego finaliza. En XNA, el Game Loop consiste en dos
métodos: Update y Draw. Por ahora, puedes pensar en el Game Loop en estos
términos: toda la lógica que afecta el juego actual se encontrará en el método
Update o el método Draw. El método Draw es típicamente usado, obviamente,
para dibujar elementos. Procura implementar lo mínimo que puedas en esta área
excepto para desplegar elementos de tu escena. Todo lo demás que sea necesario
para la ejecución adecuada de tu juego (que eventualmente involucra el mover
objetos, chequear colisiones, actualizar puntuaciones, chequear la condición fin
de juego, etc.) se encontrará en el método Update.
Método UnloadContent
 Al punto dentro del Game Loop donde se llegue a una condición de finalizar el
Juego, el bucle se termina, y se invoca automáticamente el método
UnloadContent. Este método es usado para liberar cualquier contenido
cargado previamente en el método LoadContent que requiere un manejo
especial de liberación. Tipicamente, XNA (como .NET) manejara la
recolección de basura automáticamente, pero si has modificado la memoria
en algún objeto que requiere un manejo especial, el método UnloadContent
es donde implementaras la lógica de liberación de contenido de la memoria.
Instalación
 Debe de instalar el complemento XNA a su Vusual Studio, lo puede descarcar
de:
http://www.microsoft.com/en-
us/download/details.aspx?id=27599
Plataformas soportadas
Partes de un proyecto
Proyecto WindowsGame1
 En esta sección de la solución es donde se desarrolla toda la lógica del juego.
La clase principal es la llamada Class1, donde se encuentra bien definidos los
métodos principales a implementar acorde al funcionamiento del framework
XNA. Existe otra clase estática llamada Program.cs, donde aquí en realidad es
el que invoca la Clase1 para ejecutarla; sin embargo, tu labor es implementar
tu juego es en la clase Class1.
 También veras un archivo llamado “Game.ico”, donde este es un pequeño
icono de 32×32 pixeles que se coloca en la esquina superior izquierda de la
ventana de nuestro juego al momento de ejecutar nuestra aplicación. Este
icono también se mostrara si lo anclas a la barra de inicio.
Proyecto WindowsGame1Content
 Para este proyecto de tipo Windows Game Library (4.0) que se genera
automáticamente en la solución al momento que se crea un Windows Game
(4.0), es donde se coloca todo el contenido gráfico audiovisual del juego. Se
recomienda que organices el contenido en directorios, para imágenes,
archivos de configuración, sonidos, videos, música de fondo, etc. Esta sección
ya se encuentra referenciada por el proyecto principal (que se puede ver
dentro del directorio “Content References”).
Despliegue de sprites
Proyecto #1
 Crear un nuevo proyecto XNA Game
 Si ejecuta el programa verá una pantalla azul, Felicitaciones ya haz hecho el
primer juego en XNA
 Agregar la capeta Images, y dentro de esta colocar la imgen (sprite) que
deseamos mostrar en el juego. En este caso:
 Agregamos estos atributos a la clase Game1:
Vector2 posicion;
Texture2D smiley;
 En el método Initialize, agregamos la siguiente línea antes de la línea:
base.Initialize();
posicion = new Vector2(120, 80);
 En el método LoadContent() agreguemos, luego de la línea: spriteBatch = new
SpriteBatch(GraphicsDevice);
smiley = Content.Load<Texture2D>("Images/smiley1");
 En el método Draw () agreguemos las siguientes líneas:
spriteBatch.Begin();
spriteBatch.Draw(smiley, posicion, Color.White);
spriteBatch.End();
 Ya puedes probar tu juego!
Taller #1
 Crea un juego en el cual despliegues varios sprites en diferentes posiciones.
Procura que tus imanes sean PNG y que no tengan fondo
 Ensaya diferentes posibilidades de colores cambiando la línea:
GraphicsDevice.Clear(Color.CornflowerBlue); en el método Draw()

Más contenido relacionado

La actualidad más candente

Java exception
Java exception Java exception
Java exception
Arati Gadgil
 
Greenfoot 1
Greenfoot 1Greenfoot 1
Greenfoot 1
Christian Medina
 
Java Threads and Concurrency
Java Threads and ConcurrencyJava Threads and Concurrency
Java Threads and Concurrency
Sunil OS
 
Java abstract class & abstract methods
Java abstract class & abstract methodsJava abstract class & abstract methods
Java abstract class & abstract methods
Shubham Dwivedi
 
Greenfoot 10
Greenfoot 10Greenfoot 10
Greenfoot 10
Christian Medina
 
Sentencias de Repeticion
Sentencias de RepeticionSentencias de Repeticion
Sentencias de RepeticionKenyi Figueroa
 
Chapter 02: Classes Objects and Methods Java by Tushar B Kute
Chapter 02: Classes Objects and Methods Java by Tushar B KuteChapter 02: Classes Objects and Methods Java by Tushar B Kute
Chapter 02: Classes Objects and Methods Java by Tushar B Kute
Tushar B Kute
 
Historia de la Programacion funcional
Historia de la Programacion funcionalHistoria de la Programacion funcional
Historia de la Programacion funcional
José Luis García Hernández
 
Windows.forms.ejercicios
Windows.forms.ejerciciosWindows.forms.ejercicios
Windows.forms.ejercicios
CHRISTIAN ASENCIO
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros
Karoline Tavares
 
Capítulo 6 Qbasic manipulación de cadenas de texto
Capítulo 6 Qbasic  manipulación de cadenas de textoCapítulo 6 Qbasic  manipulación de cadenas de texto
Capítulo 6 Qbasic manipulación de cadenas de texto
Julio Ayala Rolón
 
Greenfoot 7
Greenfoot 7Greenfoot 7
Greenfoot 7
Elian Maya
 
Clean Code
Clean CodeClean Code
Clean Code
Bruno Lui
 
Greenfoot 2
Greenfoot 2Greenfoot 2
Greenfoot 2
Christian Medina
 
13 Privacidad En La Red
13 Privacidad En La Red13 Privacidad En La Red
13 Privacidad En La Red
msma
 
Alice 8
Alice 8Alice 8
Alice 8
Elian Maya
 
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANSTutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
William Diaz S
 

La actualidad más candente (20)

Java exception
Java exception Java exception
Java exception
 
Greenfoot 1
Greenfoot 1Greenfoot 1
Greenfoot 1
 
Java Threads and Concurrency
Java Threads and ConcurrencyJava Threads and Concurrency
Java Threads and Concurrency
 
Java abstract class & abstract methods
Java abstract class & abstract methodsJava abstract class & abstract methods
Java abstract class & abstract methods
 
Greenfoot 10
Greenfoot 10Greenfoot 10
Greenfoot 10
 
Sentencias de Repeticion
Sentencias de RepeticionSentencias de Repeticion
Sentencias de Repeticion
 
Encapsulamiento
EncapsulamientoEncapsulamiento
Encapsulamiento
 
Chapter 02: Classes Objects and Methods Java by Tushar B Kute
Chapter 02: Classes Objects and Methods Java by Tushar B KuteChapter 02: Classes Objects and Methods Java by Tushar B Kute
Chapter 02: Classes Objects and Methods Java by Tushar B Kute
 
Historia de la Programacion funcional
Historia de la Programacion funcionalHistoria de la Programacion funcional
Historia de la Programacion funcional
 
Windows.forms.ejercicios
Windows.forms.ejerciciosWindows.forms.ejercicios
Windows.forms.ejercicios
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros
 
Capítulo 6 Qbasic manipulación de cadenas de texto
Capítulo 6 Qbasic  manipulación de cadenas de textoCapítulo 6 Qbasic  manipulación de cadenas de texto
Capítulo 6 Qbasic manipulación de cadenas de texto
 
Greenfoot 7
Greenfoot 7Greenfoot 7
Greenfoot 7
 
Clean Code
Clean CodeClean Code
Clean Code
 
Tratamento de erros
Tratamento de errosTratamento de erros
Tratamento de erros
 
POO - 07 - Operadores do Java
POO - 07 - Operadores do  JavaPOO - 07 - Operadores do  Java
POO - 07 - Operadores do Java
 
Greenfoot 2
Greenfoot 2Greenfoot 2
Greenfoot 2
 
13 Privacidad En La Red
13 Privacidad En La Red13 Privacidad En La Red
13 Privacidad En La Red
 
Alice 8
Alice 8Alice 8
Alice 8
 
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANSTutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
 

Destacado

Metodos Constructor Y Destructor
Metodos Constructor Y DestructorMetodos Constructor Y Destructor
Metodos Constructor Y Destructorrezzaca
 
Objetos y arreglos en C#
Objetos y arreglos en C#Objetos y arreglos en C#
Objetos y arreglos en C#
UVM
 
Creación de archivos de clases en c#
Creación de archivos de clases en c#Creación de archivos de clases en c#
Creación de archivos de clases en c#
UVM
 
Lenguaje de programacion c#
Lenguaje de programacion c#Lenguaje de programacion c#
Lenguaje de programacion c#XM Filial de ISA
 
1. teoría listas enlazadas
1. teoría listas enlazadas1. teoría listas enlazadas
1. teoría listas enlazadas
Sebastián Gómez
 
Pilas en Java
Pilas en JavaPilas en Java
Pilas en Java
VICTOR VIERA BALANTA
 
Grafos avanzado
Grafos avanzadoGrafos avanzado
Grafos avanzado
menamigue
 
Estructuras de datos y algoritmos
Estructuras de datos y algoritmosEstructuras de datos y algoritmos
Estructuras de datos y algoritmosRobert Rodriguez
 
Introducción a la programación y la informática. Tema 10
Introducción a la programación y la informática. Tema 10Introducción a la programación y la informática. Tema 10
Introducción a la programación y la informática. Tema 10
Andres Garcia Garcia
 
Core java by a introduction sandesh sharma
Core java by a introduction sandesh sharmaCore java by a introduction sandesh sharma
Core java by a introduction sandesh sharma
Sandesh Sharma
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosale8819
 
Tipos abstractos de datos
Tipos abstractos de datosTipos abstractos de datos
Tipos abstractos de datosJose Armando
 
Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)
Juan Astudillo
 
Estructura de Datos Arreglos
Estructura de Datos ArreglosEstructura de Datos Arreglos
Estructura de Datos Arreglosguestc906c2
 

Destacado (20)

Metodos Constructor Y Destructor
Metodos Constructor Y DestructorMetodos Constructor Y Destructor
Metodos Constructor Y Destructor
 
Objetos y arreglos en C#
Objetos y arreglos en C#Objetos y arreglos en C#
Objetos y arreglos en C#
 
Creación de archivos de clases en c#
Creación de archivos de clases en c#Creación de archivos de clases en c#
Creación de archivos de clases en c#
 
C sharp fundamentos
C sharp fundamentosC sharp fundamentos
C sharp fundamentos
 
Lenguaje de programacion c#
Lenguaje de programacion c#Lenguaje de programacion c#
Lenguaje de programacion c#
 
Tipos Primitivos y Elementos Léxicos de Java
Tipos Primitivos y Elementos Léxicos de JavaTipos Primitivos y Elementos Léxicos de Java
Tipos Primitivos y Elementos Léxicos de Java
 
Estructuras de datos
Estructuras de datosEstructuras de datos
Estructuras de datos
 
1. teoría listas enlazadas
1. teoría listas enlazadas1. teoría listas enlazadas
1. teoría listas enlazadas
 
Pilas en Java
Pilas en JavaPilas en Java
Pilas en Java
 
Grafos avanzado
Grafos avanzadoGrafos avanzado
Grafos avanzado
 
Estructuras de datos y algoritmos
Estructuras de datos y algoritmosEstructuras de datos y algoritmos
Estructuras de datos y algoritmos
 
Introducción a la programación y la informática. Tema 10
Introducción a la programación y la informática. Tema 10Introducción a la programación y la informática. Tema 10
Introducción a la programación y la informática. Tema 10
 
Taller 1 3
Taller 1 3Taller 1 3
Taller 1 3
 
áRboles binarios
áRboles binariosáRboles binarios
áRboles binarios
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 
Core java by a introduction sandesh sharma
Core java by a introduction sandesh sharmaCore java by a introduction sandesh sharma
Core java by a introduction sandesh sharma
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Tipos abstractos de datos
Tipos abstractos de datosTipos abstractos de datos
Tipos abstractos de datos
 
Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)
 
Estructura de Datos Arreglos
Estructura de Datos ArreglosEstructura de Datos Arreglos
Estructura de Datos Arreglos
 

Similar a Xna game studio presentación 01

Introduccion A Xna By Lasa
Introduccion A Xna By LasaIntroduccion A Xna By Lasa
Introduccion A Xna By LasaLuis A. Sanchez
 
Una breve resParte I. Desarrollo de VideoJuego: MonoGame en Windows 8.
Una breve resParte I. Desarrollo de VideoJuego: MonoGame en Windows 8.Una breve resParte I. Desarrollo de VideoJuego: MonoGame en Windows 8.
Una breve resParte I. Desarrollo de VideoJuego: MonoGame en Windows 8.Juan Manuel
 
Cesnavarra 2008-boletín 2
Cesnavarra 2008-boletín 2Cesnavarra 2008-boletín 2
Cesnavarra 2008-boletín 2
Cein
 
Manual y temario unity
Manual y temario unityManual y temario unity
Manual y temario unity
Marisol ALTAMIRANO CABRERA
 
6. revisión y modificación del juego -“space blaster”- Construct 5 - VideoGame
6.  revisión y modificación del juego -“space blaster”- Construct 5 - VideoGame6.  revisión y modificación del juego -“space blaster”- Construct 5 - VideoGame
6. revisión y modificación del juego -“space blaster”- Construct 5 - VideoGame
Victor Aravena
 
Desarrollando mi primera App para Windows 8 con C#
Desarrollando mi primera App para Windows 8 con C#Desarrollando mi primera App para Windows 8 con C#
Desarrollando mi primera App para Windows 8 con C#Vicente Gerardo Guzman Lucio
 
Primeros pasos
Primeros pasosPrimeros pasos
Primeros pasossaturdino
 
Legendary soccer
Legendary soccerLegendary soccer
Legendary soccer
samuelsalazar13
 
Diapositiva de juegos, Cesar negret velasco
Diapositiva de juegos, Cesar negret velascoDiapositiva de juegos, Cesar negret velasco
Diapositiva de juegos, Cesar negret velasco
DeibyAlexanderGomezF
 
[Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)
[Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)[Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)
[Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)
Microsoft Argentina y Uruguay [Official Space]
 
Desarrollo de Juegos
Desarrollo de JuegosDesarrollo de Juegos
Desarrollo de Juegos
DeibyAlexanderGomezF
 
Diapositiva de juegos 9A
Diapositiva de juegos 9ADiapositiva de juegos 9A
Diapositiva de juegos 9A
DeibyAlexanderGomezF
 
2. tutorial unity3d-disparo
2.  tutorial unity3d-disparo2.  tutorial unity3d-disparo
2. tutorial unity3d-disparo
Victor Aravena
 
2. tutorial unity3d-disparo
2.  tutorial unity3d-disparo2.  tutorial unity3d-disparo
2. tutorial unity3d-disparoVictor Aravena
 
Clonación de equipos a través de una red local
Clonación de equipos a través de una red localClonación de equipos a través de una red local
Clonación de equipos a través de una red localJVKMBV
 

Similar a Xna game studio presentación 01 (20)

Introduccion A Xna By Lasa
Introduccion A Xna By LasaIntroduccion A Xna By Lasa
Introduccion A Xna By Lasa
 
Una breve resParte I. Desarrollo de VideoJuego: MonoGame en Windows 8.
Una breve resParte I. Desarrollo de VideoJuego: MonoGame en Windows 8.Una breve resParte I. Desarrollo de VideoJuego: MonoGame en Windows 8.
Una breve resParte I. Desarrollo de VideoJuego: MonoGame en Windows 8.
 
Cesnavarra 2008-boletín 2
Cesnavarra 2008-boletín 2Cesnavarra 2008-boletín 2
Cesnavarra 2008-boletín 2
 
Manual y temario unity
Manual y temario unityManual y temario unity
Manual y temario unity
 
6. revisión y modificación del juego -“space blaster”- Construct 5 - VideoGame
6.  revisión y modificación del juego -“space blaster”- Construct 5 - VideoGame6.  revisión y modificación del juego -“space blaster”- Construct 5 - VideoGame
6. revisión y modificación del juego -“space blaster”- Construct 5 - VideoGame
 
Presemtacion1110
Presemtacion1110Presemtacion1110
Presemtacion1110
 
Presemtacion1110
Presemtacion1110Presemtacion1110
Presemtacion1110
 
Desarrollando mi primera App para Windows 8 con C#
Desarrollando mi primera App para Windows 8 con C#Desarrollando mi primera App para Windows 8 con C#
Desarrollando mi primera App para Windows 8 con C#
 
Primeros pasos
Primeros pasosPrimeros pasos
Primeros pasos
 
Presentacion05
Presentacion05Presentacion05
Presentacion05
 
Presentacion05
Presentacion05Presentacion05
Presentacion05
 
Legendary soccer
Legendary soccerLegendary soccer
Legendary soccer
 
Diapositiva de juegos, Cesar negret velasco
Diapositiva de juegos, Cesar negret velascoDiapositiva de juegos, Cesar negret velasco
Diapositiva de juegos, Cesar negret velasco
 
[Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)
[Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)[Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)
[Code Camp 2009] Desarrollo de juegos con XNA (Ángel Arcoraci)
 
Desarrollo de Juegos
Desarrollo de JuegosDesarrollo de Juegos
Desarrollo de Juegos
 
Diapositiva de juegos 9A
Diapositiva de juegos 9ADiapositiva de juegos 9A
Diapositiva de juegos 9A
 
2. tutorial unity3d-disparo
2.  tutorial unity3d-disparo2.  tutorial unity3d-disparo
2. tutorial unity3d-disparo
 
2. tutorial unity3d-disparo
2.  tutorial unity3d-disparo2.  tutorial unity3d-disparo
2. tutorial unity3d-disparo
 
Clonación de equipos a través de una red local
Clonación de equipos a través de una red localClonación de equipos a través de una red local
Clonación de equipos a través de una red local
 
Presentacion420
Presentacion420Presentacion420
Presentacion420
 

Más de Juan Cardona

Xna game studio presentación 07
Xna game studio   presentación 07Xna game studio   presentación 07
Xna game studio presentación 07
Juan Cardona
 
Xna game studio presentación 06
Xna game studio   presentación 06Xna game studio   presentación 06
Xna game studio presentación 06
Juan Cardona
 
Xna game studio presentación 05
Xna game studio   presentación 05Xna game studio   presentación 05
Xna game studio presentación 05
Juan Cardona
 
Xna game studio presentación 04
Xna game studio   presentación 04Xna game studio   presentación 04
Xna game studio presentación 04
Juan Cardona
 
Xna game studio presentación 02
Xna game studio   presentación 02Xna game studio   presentación 02
Xna game studio presentación 02
Juan Cardona
 
Xna game studio presentación 03
Xna game studio   presentación 03Xna game studio   presentación 03
Xna game studio presentación 03
Juan Cardona
 
Diplomado edumatica sesión #2
Diplomado edumatica   sesión #2Diplomado edumatica   sesión #2
Diplomado edumatica sesión #2Juan Cardona
 
Diplomado edumatica sesión #1
Diplomado edumatica   sesión #1Diplomado edumatica   sesión #1
Diplomado edumatica sesión #1Juan Cardona
 
Taller de programación clase #5
Taller de programación   clase #5Taller de programación   clase #5
Taller de programación clase #5Juan Cardona
 
Taller de programación clase #4
Taller de programación   clase #4Taller de programación   clase #4
Taller de programación clase #4Juan Cardona
 
Taller de programación clase #3
Taller de programación   clase #3Taller de programación   clase #3
Taller de programación clase #3Juan Cardona
 
Taller de programación clase #2
Taller de programación   clase #2Taller de programación   clase #2
Taller de programación clase #2Juan Cardona
 
Taller de programación clase #1
Taller de programación   clase #1Taller de programación   clase #1
Taller de programación clase #1
Juan Cardona
 

Más de Juan Cardona (13)

Xna game studio presentación 07
Xna game studio   presentación 07Xna game studio   presentación 07
Xna game studio presentación 07
 
Xna game studio presentación 06
Xna game studio   presentación 06Xna game studio   presentación 06
Xna game studio presentación 06
 
Xna game studio presentación 05
Xna game studio   presentación 05Xna game studio   presentación 05
Xna game studio presentación 05
 
Xna game studio presentación 04
Xna game studio   presentación 04Xna game studio   presentación 04
Xna game studio presentación 04
 
Xna game studio presentación 02
Xna game studio   presentación 02Xna game studio   presentación 02
Xna game studio presentación 02
 
Xna game studio presentación 03
Xna game studio   presentación 03Xna game studio   presentación 03
Xna game studio presentación 03
 
Diplomado edumatica sesión #2
Diplomado edumatica   sesión #2Diplomado edumatica   sesión #2
Diplomado edumatica sesión #2
 
Diplomado edumatica sesión #1
Diplomado edumatica   sesión #1Diplomado edumatica   sesión #1
Diplomado edumatica sesión #1
 
Taller de programación clase #5
Taller de programación   clase #5Taller de programación   clase #5
Taller de programación clase #5
 
Taller de programación clase #4
Taller de programación   clase #4Taller de programación   clase #4
Taller de programación clase #4
 
Taller de programación clase #3
Taller de programación   clase #3Taller de programación   clase #3
Taller de programación clase #3
 
Taller de programación clase #2
Taller de programación   clase #2Taller de programación   clase #2
Taller de programación clase #2
 
Taller de programación clase #1
Taller de programación   clase #1Taller de programación   clase #1
Taller de programación clase #1
 

Último

ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
DanielErazoMedina
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
JimmyTejadaSalizar
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
raquelariza02
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
Luis Enrique Zafra Haro
 
Ventajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloroVentajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloro
durangense277
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
ManuelCampos464987
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
zoecaicedosalazar
 
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
espinozaernesto427
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
cj3806354
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
rafaelsalazar0615
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
thomasdcroz38
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
CesarPazosQuispe
 

Último (20)

ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
 
Ventajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloroVentajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloro
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
 
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
 

Xna game studio presentación 01

  • 2. Que es xna?  Microsoft XNA es un conjunto de herramientas con un entorno de ejecución provisto por Microsoft que facilita el desarrollo y manejo de videojuegos. XNA se enfoca de librar a los desarrolladores de juegos de escribir mucho código repetitivo pero con ligeros cambios, y traer diferentes aspectos de producción del juego en un solo sistema.
  • 4. Método Initialize  El método Initialize es usado para inicializar variables y otros objetos asociados con el objeto Game1. Los objetos del dispositivo grafico será inicializados en este punto y pueden ser usados en el métodos Initialize para ayudarte a inicializar otros objetos que dependen en la configuración. Utilizarás este método para inicializar valores de puntuación y otros valores afines.
  • 5. Método LoadContent  El método LoadContent es invocado después del método Initialize, de la misma forma para el caso que el contenido grafico debe ser recargado (Por ejemplo cuando el dispositivo grafico debe ser reiniciado debido a que el jugador ha cambiado la configuración grafica del juego, o algo por el estilo). El método LoadContent es donde se carga todos los gráficos y otro contenido requerido por el juego, incluyendo imágenes, modelos, sonidos, etc.
  • 6. Game Loop (Método Update y Metodo Draw)  Despues que culmina el método LoadContent, el juego entra en un estado conocido como Game Loop, o bucle de juego. Casi todos los juegos entran en algún tipo de bucle de juego, independientemente si están escritos en XNA o no. Esta área de código difiere del típico entorno de programación de juegos, y para algunos desarrolladores les puede tomar algo de tiempo acostumbrarse.  En esencia, un Game Loop consiste en una serie de métodos que son invocados una y otra vez hasta que el juego finaliza. En XNA, el Game Loop consiste en dos métodos: Update y Draw. Por ahora, puedes pensar en el Game Loop en estos términos: toda la lógica que afecta el juego actual se encontrará en el método Update o el método Draw. El método Draw es típicamente usado, obviamente, para dibujar elementos. Procura implementar lo mínimo que puedas en esta área excepto para desplegar elementos de tu escena. Todo lo demás que sea necesario para la ejecución adecuada de tu juego (que eventualmente involucra el mover objetos, chequear colisiones, actualizar puntuaciones, chequear la condición fin de juego, etc.) se encontrará en el método Update.
  • 7. Método UnloadContent  Al punto dentro del Game Loop donde se llegue a una condición de finalizar el Juego, el bucle se termina, y se invoca automáticamente el método UnloadContent. Este método es usado para liberar cualquier contenido cargado previamente en el método LoadContent que requiere un manejo especial de liberación. Tipicamente, XNA (como .NET) manejara la recolección de basura automáticamente, pero si has modificado la memoria en algún objeto que requiere un manejo especial, el método UnloadContent es donde implementaras la lógica de liberación de contenido de la memoria.
  • 8. Instalación  Debe de instalar el complemento XNA a su Vusual Studio, lo puede descarcar de: http://www.microsoft.com/en- us/download/details.aspx?id=27599
  • 10. Partes de un proyecto
  • 11. Proyecto WindowsGame1  En esta sección de la solución es donde se desarrolla toda la lógica del juego. La clase principal es la llamada Class1, donde se encuentra bien definidos los métodos principales a implementar acorde al funcionamiento del framework XNA. Existe otra clase estática llamada Program.cs, donde aquí en realidad es el que invoca la Clase1 para ejecutarla; sin embargo, tu labor es implementar tu juego es en la clase Class1.  También veras un archivo llamado “Game.ico”, donde este es un pequeño icono de 32×32 pixeles que se coloca en la esquina superior izquierda de la ventana de nuestro juego al momento de ejecutar nuestra aplicación. Este icono también se mostrara si lo anclas a la barra de inicio.
  • 12. Proyecto WindowsGame1Content  Para este proyecto de tipo Windows Game Library (4.0) que se genera automáticamente en la solución al momento que se crea un Windows Game (4.0), es donde se coloca todo el contenido gráfico audiovisual del juego. Se recomienda que organices el contenido en directorios, para imágenes, archivos de configuración, sonidos, videos, música de fondo, etc. Esta sección ya se encuentra referenciada por el proyecto principal (que se puede ver dentro del directorio “Content References”).
  • 14.  Crear un nuevo proyecto XNA Game  Si ejecuta el programa verá una pantalla azul, Felicitaciones ya haz hecho el primer juego en XNA  Agregar la capeta Images, y dentro de esta colocar la imgen (sprite) que deseamos mostrar en el juego. En este caso:  Agregamos estos atributos a la clase Game1: Vector2 posicion; Texture2D smiley;  En el método Initialize, agregamos la siguiente línea antes de la línea: base.Initialize(); posicion = new Vector2(120, 80);  En el método LoadContent() agreguemos, luego de la línea: spriteBatch = new SpriteBatch(GraphicsDevice); smiley = Content.Load<Texture2D>("Images/smiley1");
  • 15.  En el método Draw () agreguemos las siguientes líneas: spriteBatch.Begin(); spriteBatch.Draw(smiley, posicion, Color.White); spriteBatch.End();  Ya puedes probar tu juego!
  • 16. Taller #1  Crea un juego en el cual despliegues varios sprites en diferentes posiciones. Procura que tus imanes sean PNG y que no tengan fondo  Ensaya diferentes posibilidades de colores cambiando la línea: GraphicsDevice.Clear(Color.CornflowerBlue); en el método Draw()