Creative Commons License
Teoria de Juegos en Flash. Calculo del movimiento de un vehiculo con direccion y velocidad. por Julio Laguna is licensed under a Creative Commons Reconocimiento-No comercial-Sin obras derivadas 2.5 España License.

Teoria de Juegos en Flash. Calculo del movimiento de un vehiculo con direccion y velocidad.
por Julio - redribera

1 Capítulo 1.
    1.1 Introducción.
    1.2 Coordenadas cartesianas.
    1.3 Rotacion de clips en Flash.
    1.4 Movimiento dirigido. Vector dirección.
    1.5 Montaje de la película Flash.
    1.6 Comentarios y notas finales.

1 Capítulo 1.

1.1 Introducción.

En este tutorial vamos a retomar el desarrollo de juegos en Flash (en realidad los conceptos son extrapolables a otras plataformas de programación).
Para ello, vamos intentar presentar al lector, algunos trucos para conseguir emular un movimiento similar al de los vehiculos terrestres pilotados. Es decir sean capaces de girar 360 grados y avanzar en la dirección frontal o posterior hacia la que el vehiculo está orientado.

Para entender mejor a lo que nos referimos, lo mejor es que vosotros mismos probeís el fichero final que obtendremos al finalizar este tutorial.
Bajo estas líneas podeís probar el fichero (elTanque.swf), que nos permite mover un vehiculo (en este caso un tanque, o al menos he intentado que se le parezca). Para moverlo es necesario utilizar los cursores. La flecha (UP), acelera y combinado con las flechas (LEFT) y (RIGHT), podemos hacer girar el vehiculo. Identico resultado se obtiene con la combinación de (DOWN) y las flechas (LEFT) o (RIGHT). Con las teclas (Z) y (X) seremos capaces de girar la torreta del tanque y finalmente con (SPC), emularemos el disparo de un proyectil.
Si no responde a las teclas, quizás necesiteís hacer un click sobre la propia pelicula para darle el enfoque.


1.2 Coordenadas cartesianas.

El movimiento de objetos en el desarrollo de cualquier juego de tipo 2D, obedece a las transformaciones propias dentro de un plano cartesiano, como el mostrado a la izquierda de este texto.
El plano cartesiano está formado por dos rectas numéricas, una horizontal y otra vertical que se cortan en un punto. La recta horizontal es llamada eje de las abscisas o de las equis (x), y la vertical, eje de las ordenadas o de las yes, (y); el punto donde se cortan recibe el nombre de origen.
El plano cartesiano tiene como finalidad describir la posición de puntos, los cuales se representan por sus coordenadas o pares ordenados. Las coordenadas se forman asociando un valor del eje de las 'X' y uno de las 'Y', respectivamente, esto indica que un punto se puede ubicar en el plano cartesiano con base en sus coordenadas, lo cual se representa como:

  • P (x, y)

En una película de Flash, al igual que en otros muchos lenguajes de programacion, cuando estamos trabajando en dos diemnsiones (2D), disponemos de la capacidad de ubicar objetos en un determinado tapiz o canvas, mediante el uso de las propiedades _x e _y del propio objeto. Cocretamente en Flash, son las propiedades de un determinado clip de película.

Sin embargo, el sistema de coordenadas en Flash, al igual que otros muchos lenguajes de programación, no funciona como un plano cartesiano. Muestra una pequeña diferencia, pero suficientemente importante, y es que invierten el eje Y, es decir los valores positivos de la coordenada Y, fluyen en dirección opuesta a un plano cartesiano, hacia abajo de la pantalla. Además el origen de coordenadas (el punto 0,0), se situa en la parte superior-izquierda de la ventana principal.
Es un detalle a tener en cuenta cuando queremos posicionar o mover objetos dentro de una película Flash, que es el tema que nos compite en este tutorial. Bajo estas líneas teneís un ejemplo de como funcionan las coordenadas de una película Flash.
Observad como el origen de coordenadas, se encuentra en la zona superior izquierda. y los valores positivos de x e y.
Fijaos también como el enganche del clip sobre la película, en este caso la caja, es también el punto superior-izquierdo del clip.
Esto es si la instancia de la caja se llama box; box._x y box._y definen el punto superior-izquierdo del clip.


   
Siguiente »