Tutorial de XNA para girar un modelo 3D

04/24/2010 by Dolan

Tutorial de XNA para girar un modelo 3D

XNA Studio de Microsoft es un potente y relativamente fácil de suite de programa diseñado para proporcionar una interfaz para crear juegos para PC con Windows, incluso Windows 7 teléfonos y consolas Xbox. Mediante este programa, junto con la versión gratuita de Microsoft Visual Studio, se pueden crear juegos 2D y 3D. Una buena manera de empezar con la programación de videojuegos 3D XNA es la carga y girar un modelo 3D.

Instrucciones

1 crear un nuevo proyecto de Microsoft XNA Studio haciendo clic en "Archivo" y "Nuevo proyecto" y seleccionar "Windows Game".

2 haga clic derecho en la carpeta "Content" en el "explorador de soluciones" y elegir "Añadir" y "Nueva carpeta". El nombre "Modelos."

3 Repita el paso 2, pero este nombre tiempo la carpeta "Texturas".

4 haga clic derecho en cada carpeta que a creado y seleccionaremos "Agregar elemento existente." Añadir un modelo 3D existente y su textura a las carpetas correspondientes. Si no tienes un modelo 3D, puede descargarlo del sitio web de Microsoft (ver recursos).

5 pegar las siguientes nuevas variables dentro del código fuente, justo debajo de la línea "public class juego": flotador aspectRatio; Modelo mi modelo; Vector3 modelo posición = Vector3.Zero; modelo de flotador rotación = 0.0f; Vector3 cámara posición = new Vector3 (0.0f, 50.0f, 5000.0f);

6 pegar el siguiente código en la función de "LoadContent" que fue creada para usted cuando usted crea su proyecto: mi modelo = Content.Load < modelo > ("Models\\p1_wedge.fbx"); aspectRatio = gráficos. GraphicsDevice.Viewport.AspectRatio; Utiliza el modelo de muestra gratis proporcionado por Microsoft "p1_wedge.fbx."

7 pegar el siguiente código de Microsoft dentro de la función "Dibujar": gráficos. GraphicsDevice.Clear(Color.CornflowerBlue); Copiar cualquier padre se transforma. Transforma [] matriz = new Matrix[myModel.Bones.Count]; myModel.CopyAbsoluteBoneTransformsTo(transforms); Dibujar el modelo. Un modelo de múltiples mallas, tan lazo. foreach (ModelMesh mesh en myModel.Meshes) {/ / este es donde se establece la orientación de la malla, así / / as nuestra cámara y proyección. foreach (BasicEffect efecto de malla. Efectos) {efecto. EnableDefaultLighting(); efecto. Mundo = transforma [malla. ParentBone.Index] * Matrix.CreateRotationY(modelRotation) * Matrix.CreateTranslation(modelPosition); efecto. Ver = Matrix.CreateLookAt (cameraPosition, Vector3.Zero, Vector3.Up); efecto. Proyección = Matrix.CreatePerspectiveFieldOfView (MathHelper.ToRadians(45.0f), aspectRatio, 1.0f, 10000.0f); } / / Dibujar la malla, usando los efectos mencionados anteriormente. malla. Draw(); } base. Draw(gameTime);

8 pegar el siguiente código de Microsoft en la función de actualización: / / permite el juego de salida si (GamePad.GetState(PlayerIndex.One). Buttons.Back == ButtonState.Pressed) esto. Exit(); modelo de rotación += (float)gameTime.ElapsedGameTime.TotalMilliseconds * MathHelper.ToRadians(0.1f); de la base. Update(gameTime);

Related Articles

© 2017 - cyberdiggs.com | Contact us: webmaster# cyberdiggs.com