Pues estoy empezando un juego de cartas y quiero que cuando el jugador pinche en una carta que la carta se gire poco a poco, eso es posible, sin tener que dibujar una secuencia de sprites por cada carta?
Si lo haces en 2D (Que supongo que sí), a mi parecer la respuesta es no; deberías hacer una secuencia de sprites (1 gif) para el efecto de girar la carta.
¿si hace falta usar 3d, seria posible utilizar un objeto 3d en mi aplicación 2d?
Cita de: jose_cv21 en Abril 02, 2013, 05:51:53 PM
¿si hace falta usar 3d, seria posible utilizar un objeto 3d en mi aplicación 2d?
Si, pero no es realmente necesario. Manejando las escalas de imagen se puede facilmente.
Yo lo haria asi.
[gml]contador+=.1;
image_xscale=cos(contador);
image_index=image_xscale>0;[/gml]
Listo con eso basta, tienes que declarar la variable contador en create y tener un sprite con una subimagen con la parte de arriba de la carta y otra con la parte de abajo.
muchisimas gracias va genias el xscale.
Y si no es mucho preguntar como hago para que en vez de rotar sobre Y=0 lo haga sobre un punto central de la carta??
si el objeto tiene 100*100 pixeles pues que rote sobre x=50 para que rote sobre su centro
He pensado en ir desplazando el objeto por el eje de la x para conseguir el efecto, pero he estado viendo juegos similares y a la vez q gira la carta también se ve como q la imagen se aleja y luego se vuelve a acercar y estoy dándole vueltas pero eso no se me ocurre como hacerlo, ¿alguna idea?
José,
para que gire sobre su centro pon que el sprite se origine desde su centro. Ve a la carpeta de sprites, busca el sprite de la carta y en Origin clickea Center.
No entendí muy bien lo último, ¿quieres dar ese efecto de que la carta se aleja y luego se acerca mientras gira?
En ese caso usa el image_yscale.
Cita de: Klind en Abril 03, 2013, 04:40:01 AM
José,
para que gire sobre su centro pon que el sprite se origine desde su centro. Ve a la carpeta de sprites, busca el sprite de la carta y en Origin clickea Center.
No entendí muy bien lo último, ¿quieres dar ese efecto de que la carta se aleja y luego se acerca mientras gira?
En ese caso usa el image_yscale.
Creo que eso es justo lo que necesito, muchas gracias en cuanto llegue a casa me pondo con ello, mil gracias
[gml]contador+=.1;
image_xscale=cos(contador);
image_yscale=1.4-abs(image_xscale)*.4
image_xscale=image_xscale+abs(image_xscale)*.4
image_index=image_xscale>0;[gml]
Creo que para que se haga grande seria asi, pero no estoy seguro no tengo gm.
Bruno, klind que grandes soys, espero algun dia controlar tanto como vostros. thankssss :D