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.4 Movimiento dirigido. vector dirección. (Continuación)

Voy a citar un artículo de la wikipedia, donde creo que está muy bien explicado el concepto de las matrices de transformación para un rotación en 2D. Este artículo lo podeís encontrar en Rotacion, wikipedia, la enciclopedia libre.

-----------------------------------------------------------
En matemáticas las rotaciones son transformaciones lineales que conservan las normas en espacios vectoriales en los que se ha definido una operación de producto interior. La matriz de transformación tiene la propiedad de ser una matriz unitaria, es decir, es ortogonal y su determinante es 1.
Sea un vector A en el plano cartesiano definido por sus componentes x e y, descrito vectorialmente a través de sus componentes:

La operación de rotación del punto señalado por este vector alrededor de un eje de giro puede siempre escribirse como la acción de un operador lineal (representado por una matriz) actuando sobre el vector (multiplicando al vector) .
En dos dimensiones la matriz de rotación para el vector dado puede escribirse de la manera siguiente:

Al hacer la aplicación del operador, es decir, al multiplicar la matriz por el vector, obtendremos un nuevo vector A' que ha sido rotado en un ángulo ? en sentido antihorario: RA = A', es decir

donde:

-----------------------------------------------------------

Todo esto, viene a decir, que con estas formulas, podemos calcular el vector de dirección, a partir del angulo que forma con otro vector de dirección conocido.
Nosotros conocemos estos datos, ya que el vector inicial de dirección lo conocemos, ya que tan solo tenemos que encarar el tanque inicialmente hacia arriba, y este es el vector Vini= (0,1). Por otro lado también conocemos el angulo, que forma, ya que somos nosotros mismos quienes aplicaremos el angulo, en base al valor que le demos a la propiedad _rotation, del MovieClip tanque. Este valor de rotación lo podemos aplicar por ejemplo incrementalmente, cuando pulsemos una tecla para girar a izquierda o derecha. De esta forma tan solo tenemos que calcular el vector de dirección nuevo, cada vez que apliquemos una rotación al clip del tanque, en función del valor de rotación que hayamos aplicado.

1.5 Montaje de la película Flash.

Quizás todos los terminos que hemos estado explicando hasta ahora, hayan resultado algo engorrosos de comprender, ya que la teoría de vectores, rectas o matrices, son terminos matemáticos, quizás no faciles de tragar por todos nuestros lectores. Vamos a intentar exponer todo lo que hemos visto con el montaje de la película en Flash y su correspondiente código ActionScript, donde espero los terminos sean mas objetivos con respecto a los conceptos que hemos visto hasta ahora.
No profundizaré demasiado en los terminos básicos de Flash, e intentaré ir al montaje concreto de nuestra película, asumiendo que el lector tiene unos conocimientos básicos, tanto de Flash como del lenguaje ActionScript.
No obstante, para aquellos lectores que desconozcan Flash y ActionScript, y deseen realizar este tutorial, les recomiendo se den una vuelta por el sitio de Novatos Flash, donde encontrarán una documentación de introducción a Flash, bien explicada, y en español.

Realicemos otro breve vistazo a la película Flash con el tanque que se mueve (Cursores y teclas Z,X y SPC).


Creemos una nueva película Flash estandard de 550x400 píxeles y la podeís guardar con el nombre que queraís, yo la he llamado elTanque.fla. Pasemos a trabajar con ella.

Figura 1:Capas de la escena principal
Figura 1:Capas de la escena principal

Necesitaremos crear tres capas en la escena principal, tal y como podeís ver en la figura 1.
La capa bg, tan solo contiene el fondo de la escena, vamos los númeritos y textos que hemos puesto en la película en color blanco y las líneas discontinuas para simular como un parking. Vamos lo primero que se me ha ocurrido para darle colorido. Esto es todo lo que tengo que decir acerca de esta capa
La capa tanque será la que contendrá la instancia del simbolo (MovieClip), en el que aparece el tanque al completo y que luego abordaremos.
Finalmente la capa Acciones, contendrá las instrucciones en ActionScript que realizarán toda la lógica y control de movimiento del tanque sobre la escena, así como las respuestas al teclado de los usuarios, también veremos este código donde pondremos de manifiesto todo lo aprendido hasta ahora.

« Anterior
Indice
Siguiente »