estirar un objeto
Frecuentes
Visto 298 veces
3
Tengo una imagen de una cadena de tamaño 12*30. Quiero crear una animación que dé la sensación de estirar una cuerda. Lo hice escalando la imagen, pero el problema al que me enfrento es que la colisión no ocurre con la imagen escalada. Ocurre solo en la región 12*30, que es el tamaño de la imagen original. Quiero que la colisión ocurra a lo largo de la cuerda. ¿Hay una mejor manera que escalar para hacer esto? Gracias.
image_rect = display.newImage("string.png")
image_rect.x = frog_jump_SheetSet.x + 10
image_rect.y = frog_jump_SheetSet.y + 10
physics.addBody(image_rect )
image_rect.yScale = 0.1
localGroup:insert(image_rect)
image_rect .collision = onStretch
image_rect :addEventListener("collision",image_rect )
tr1 = tnt:newTransition(image_rect,{time = 50,yScale = string_length })
tr2 = tnt:newTransition(image_rect,{delay = 100,time = 50,yScale = 0.1})
1 Respuestas
1
El motor Corona Physics no admite el escalado directo, lo único que puede hacer es agregar rectángulos al objeto o eliminarlos según sea necesario para que se ajusten a la nueva forma...
En general, debe evitar usar el escalado o la rotación de la imagen cuando usa la física y, en su lugar, solo cambie la API de física para rotar (usando torque) y no hay nada que pueda hacer al respecto.
Respondido 15 ago 12, 21:08
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas lua coronasdk or haz tu propia pregunta.