Example #1
0
        public void moveShip(float elapsedTime)
        {
            //Declaramos un vector de movimiento, inicializado en 0.
            Vector3 movement = new Vector3(0, 0, 0);

            //El movimiento sobre el ocenao es en los ejes XZ.
            //Movernos de izquierda a derecha, sobre el eje X.
            if (input.keyDown(Key.Left))
            {
                movement.Z = 1;
                movement  *= MOVEMENT_SPEED * elapsedTime;
                ship.Move(movement);
                ship.RotateY(-0.0001f);
                ship.Render();
                return;
            }
            else if (input.keyDown(Key.Right))
            {
                movement.Z = 1;
                movement  *= MOVEMENT_SPEED * elapsedTime;
                ship.Move(movement);
                ship.RotateY(0.0001f);
                ship.Render();
                return;
            }
            //Movernos para adelante y atrĂ¡s, sobre el eje Z.
            if (input.keyDown(Key.Up))
            {
                movement.Z = 1;
            }
            else if (input.keyDown(Key.Down))
            {
                movement.Z = -1;
            }
            else if (input.keyDown(Key.Down) && input.keyDown(Key.Right))
            {
                movement.Z = -1;
            }


            //Multiplicar movimiento por velocidad y elapsedTime
            movement *= MOVEMENT_SPEED * elapsedTime;

            //Aplicar movimiento
            ship.Move(movement);

            //ship.rotateY(0.0001f);
        }