예제 #1
0
 /// <summary>
 /// Método que se llama una sola vez,  al principio cuando se ejecuta el ejemplo.
 /// Escribir aquí todo el código de inicialización: cargar modelos, texturas, modifiers, uservars, etc.
 /// Borrar todo lo que no haga falta
 /// </summary>
 public override void init()
 {
     Parametros.crear();
     barco     = new Barco();
     escenario = new Escenario(barco);
     //Lluvia.cargar();
 }
예제 #2
0
        public static void procesar(Barco barco)
        {
            barco.setAceleraFrena(0);
            barco.setDerechaIzquierda(0);

            // Propulsión y freno del Barco
            if (GuiController.Instance.D3dInput.keyDown(Microsoft.DirectX.DirectInput.Key.UpArrow))
            {
                barco.setAceleraFrena(1);
            }
            if (GuiController.Instance.D3dInput.keyDown(Microsoft.DirectX.DirectInput.Key.DownArrow))
            {
                barco.setAceleraFrena(-1);
            }
            // Timón del Barco
            if (GuiController.Instance.D3dInput.keyDown(Microsoft.DirectX.DirectInput.Key.LeftArrow))
            {
                barco.setDerechaIzquierda(-1);
                barco.setRotation(true);
                barco.setVelocidadRotacion(-1);
            }
            if (GuiController.Instance.D3dInput.keyDown(Microsoft.DirectX.DirectInput.Key.RightArrow))
            {
                barco.setDerechaIzquierda(1);
                barco.setRotation(true);
                barco.setVelocidadRotacion(1);
            }
            if (GuiController.Instance.D3dInput.keyDown(Microsoft.DirectX.DirectInput.Key.Space))
            {
                barco.setShootFlag(true);
            }

            // Distancia de Camara
            if (GuiController.Instance.D3dInput.keyDown(Microsoft.DirectX.DirectInput.Key.Add))
            {
                float fMultiplicadorDistancia = GuiController.Instance.ElapsedTime * 1000;
                GuiController.Instance.ThirdPersonCamera.OffsetForward -= fMultiplicadorDistancia;
            }
            if (GuiController.Instance.D3dInput.keyDown(Microsoft.DirectX.DirectInput.Key.Subtract))
            {
                float fMultiplicadorDistancia = GuiController.Instance.ElapsedTime * 1000;
                if (GuiController.Instance.ThirdPersonCamera.OffsetForward <= fMultiplicadorDistancia)
                {
                    GuiController.Instance.ThirdPersonCamera.OffsetForward += fMultiplicadorDistancia;
                }
            }
        }
예제 #3
0
        public Escenario(Barco barco)
        {
            {
                d3dDevice = GuiController.Instance.D3dDevice;

                //Asignar barco del usuario
                barcoUser = barco;

                crearSkyBoxNoche();
                crearTerreno();
                crearSonido();
                cargarMeshes();
                cargarShader();
                cargarShadowMap();
                Camara.initialize();
                cargarPreview();
                Lluvia.cargar(barcoUser.getPosition());
                ContadorEnemigos.cargar();
                animatedSprite = Utiles.crearExplosion();
                crearQuadtree();
            }
        }