miércoles, 25 de agosto de 2010

Enlaces a los tutoriales de XNA en 3D

Publico unos tutoriales excelentes de programación en 3D, es como hacer una especie de Space Invaders. En algunos pasos (Steps) del tutorial se pueden encontrar links (More Details) para mayor información acerca de un tema en especifico que se quiera tratar dentro del tutorial, en el próximo titulo estará la traducción de estos links.

Cada capitulo viene con su código de descarga y su respectiva explicación en ingles:

Capitulo1 (Introducción al tutorial de 3D): Indica como comenzar un proyecto en XNA, el video se puede encontrar también en youtube.


    Paso 1: Familiariza al usuario de Visual C# con su entorno de programación.
    Paso 2: Indica como realizar un nuevo proyecto.

Importante descargar el código de este capitulo, ya que contiene los modelos en 3D y sonidos que se cargaran en el proyecto.


    Paso 1: Indica abrir el archivo descargado de extensión "zip" (Ir al capitulo anterior ubicado en este titulo) y cargar los modelos 3D en el proyecto abierto.
    Paso 2: Indica de la misma manera del paso anterior cargar los archivos de audio en el proyecto.


    Paso 1: Indica como crear el primer objeto de tipo Model (modelo) y define una cámara para ver la escena con proyección de matrices, este paso consta de 2 partes: parte 1 y parte 2, este paso tiene un link para mas detalles que esta traducido en el próximo titulo.
    Paso 2: Indica la creación del método DibujarModelo que puede pintar su modelo en pantalla usando la clase BasicEffect para transformación e iluminación fáciles, este paso tiene un link para mas detalles que esta traducido en el próximo titulo.
    Paso 3: Carga los datos del modelo desde el explorador de soluciones usando el método ContenManager.Load.
    Paso 4: Modifique el método Draw para llamar a DibujarModelo, y ver su primer modelo en 3D, el terreno y fondo a la vez en pantalla.


    Paso 1: Cree una nueva clase GameObject que define los atributos de un objeto dentro del juego, modelo, posición, orientación y escala en el mundo 3D.
    Paso 2: Convierta su terreno en un objeto de tipo GameObject y cambie su secuencia de descarga a una manera apropiada.
    Paso 3: Cree un nuevo GameObject que representará la mitad estacionaria de su lanzamisiles y carguelo a su juego.
    Paso 4: Convierta el método DibujarModelo en la mas poderosa y versátil función DibujarGameObject, la cual usará para dibujar objetos de tipo GameObject, este paso tiene un link para mas detalles que esta traducido en el próximo titulo.


    Paso 1: Cree la mitad restante móvil del lanzamisiles: el apuntador con un nuevo GameObject.
    Paso 2: Modifique el método Update para reconocer tanto teclado como gamepad y traducirlo a valores de rotación para el lanzamisiles, este paso tiene un link para mas detalles que esta traducido en el próximo titulo.
    Paso 3: Use el nuevo metodo DibujarGameObject para lanzar su misil en linea recta y dibujarlo con la rotación y ubicación correctas.


    Paso 1: Añada nuevas variables a su clase GameObject para que permita a los objetos tener velocidad, y puedan variar entre modelos vivos o muertos.
    Paso 2: Cree e inicialice un array de misiles de tipo GameObject que pueden ser disparados por el jugador.
    Paso 3: Modifique el método Update para llamar al método DispararMisil cuando el jugador presione el botón apropiado, pero usando estados previos en el teclado para mantener la forma del disparo manteniendo el botón presionado, este paso tiene un link para mas detalles que esta traducido en el próximo titulo.
    Paso 4: Aprenda de transformaciones y vectores en 3D creando el método DispararMisil que ubica los misiles en la posición y velocidad adecuadas al ser disparados, este paso tiene 2 partes: parte 1 y parte 2.
    Paso 5: Cree un método ActualizarMisiles para aplicar velocidad a los misiles en vuelo y destruirlos cuando vuelen muy lejos.
    Paso 6: Dibuje los misiles usando el método DibujarGameObject dentro de un ciclo.


    Paso 1: Introducción a la herramienta de XNA para realizar sonido de alta calidad: Microsoft Cross-Platform Audio Creator Tool, o XACT, este paso tiene un link para mas detalles que esta traducido en el próximo titulo.
    Paso 2: Una vez abierto XACT, crear un nuevo proyecto y añadir un banco de sonido y uno de ondas para mantener sus datos de sonido,
    Paso 3: Añada ondas a su banco de ondas y transformelas a señales que puede reproducir en su juego, salve su proyecto y vuelva a Visual Studio, este paso tiene un link para mas detalles que esta traducido en el próximo titulo.
    Paso 4: Añada su proyecto hecho en XACT al explorador de soluciones para su juego en XNA para que sus sonidos puedan ser procesados en la tubería de recursos.
    Paso 5: Escriba el código necesario para inicializar su motor de sonido en su juego, y cargue los bancos de sonido y de ondas a su proyecto, este paso tiene un link para mas detalles que esta traducido en el próximo titulo.
    Paso 6:SoundBank.PlayCue para realizar un sonido cada vez que lance un misil.




    Paso 1: Instanciar un objeto aleatorio (random) que genere números, y crear un array de GameObject para representar los enemigos alienigenas.
    Paso 2: Inicializar un método ActualizarEnemigo que moverá los enemigos (GameObjects) a través de la pantalla dependiendo de su atributo velocidad en cada frame.
    Paso 3: Cree constantes para delimitar su generador de números aleatorios, estos modifican la aparición de enemigos en el método ActualizarEnemigo para ubicarlos aleatoriamente usando números al azar e interpolación lineal.
    Paso 4: Dibuje a los enemigos alienigenas en la pantalla usando el método DibujarGameObject.

Capitulo 10 (Destrucción de enemigos): Aquí retomamos el concepto de círculos para colisiones en sprites en 2D y lo aplicamos en esferas para colisiones en 3D.

    Paso 1: Cree un método ProbarColision que compara los objetos de tipo EsferaLimitadora al rededor de misiles y enemigos para probar sus colisiones, reproduzca sonidos y elimine misiles y naves espaciales que colapsan.

A toda la comunidad apasionada por los videojuegos, espero que este blog traducido de la pagina tutorial de 3D de XNA creators, haya servido. A continuación las explicaciónes de los links More Details que aparecen en los pasos del tutorial.

2 comentarios: