tools software resolved library commands cannot basics flash actionscript-3 graphics computational-geometry

flash - software - processing video*;



AS3 ¿Cómo crear un MovieClip a doble cara que cuando la rotación también muestra el otro lado? (3)

Mira este enlace.

http://codingfiend.com/examples/greeting_card/

En lugar de usar dos marcos, haga que su frente y parte posterior sean dos clips de película en un marco. Colóquelos uno encima del otro, el lado frontal en la parte superior, y voltee la parte trasera horizontalmente. Utilicé este evento ENTER_FRAME para seguir la rotación y mostrar y ocultar el frente de la tarjeta. Comienzo el evento al hacer clic en el frente de la tarjeta, seguir la interpolación y matar el evento cuando está abierto. Tal vez también podría rastrear la posición y la rotación para lograr lo que está buscando.

protected function oef(evt:Event):void { var rot:Number = Math.round(_front.rotationY); if(rot >= 0 && rot <= 89) { _front.outside.visible = true; } else { _front.outside.visible = false; } }

Tengo un clip de película que tiene dos marcos. En el primer fotograma tengo el anverso y en el segundo tengo el reverso. Estoy rotando el MovieClip por las propiedades rotationX, rotationY, rotationZ.

Quiero mostrar el cuadro 2 cuando el MovieClip gira. Por favor ayuda. No quiero usar la clase PaperVision. Además, considere la Vista en perspectiva de la escena.

A veces, MovieClip no solo depende de la rotación. También depende igualmente de la posición (solo en la Vista en perspectiva).

Gracias por considerar mi pregunta.

Saludos, Sanket

PD: verifique el problema aquí http://sanket.info/as3/problem.gif


Parece que quiere determinar qué lado ve según la rotación y el ángulo de perspectiva combinados.

la rotación ya sabes cómo leer.

y parece que el ángulo de perspectiva se basa solo en un cambio en x (basado en su imagen)

en términos de juego, esto sería como ver a través de los ojos de un héroe que solo puede dar un paso hacia la izquierda y la derecha, pero no hacia adelante ni hacia atrás. Por favor confirmar.

si ese es el caso, recomiendo encontrar el ángulo de perspectiva con algo como esto.

esto es 2d matemática, como si miras tu cámara (como héroe) y tu foto desde arriba. y encontrar el ángulo entre ellos.

//find difference between hero and pic positions (delta means difference or change) var deltaPt:Point = new Point(pic.x - hero.x, pic.y - hero.y); //find angle between hero and pic, then convert to degrees from radians var angle:Number = Math.atan2(deltaPt.y, deltaPt.x) * 180 / Math.PI var testAngle:Number = pic.rotation + angle; trace("angle: "+angle); trace("testAngle: "+testAngle);

verifica si esos rastros están cerca de lo que esperas ver.

tal vez el ángulo debe ser negativo en lugar de positivo, o compensado por 90º o algo así (tiendo a adivinar y verificar esto un poco, perdón por la pendiente)

si tu héroe también es capaz de girar ... puede ser más complicado, o podría implicar agregar la rotación del héroe a la mezcla, aún no he pensado en esa parte.

una vez que lo ajuste bien debería terminar en algo como esto, que estoy seguro ya lo sabe.

if(testAngle > 90){gotoAndStop(2)} else{gotoAndStop(1)};

espero que ayude a algunos.