Comunidad de diseño web y desarrollo en internet online

Rotar cuerpo segun nibel del piso

Citar            
MensajeEscrito el 05 May 2011 02:50 am
La verdad que esto me esta volviendo loco!! hace ya días que estoy tratando
de rotar un MC " auto ", que en este caso es un rectángulo, para que cuando
el "piso" este con una inclinación de digamos 90º dicho mc rote y quede "derecho"
simulando que viéndolo desde un perspectiva frontal y moviéramos el auto por un terreno
de subidas y bajadas esto no este siempre con la rotación en 0º sino que valla variando
según el nivel del piso.
Bueno hasta ahora intente con este código

Código ActionScript :


var ptA:Number= -auto.height/2
var ptB:Number=  auto.height/2
var ptD:Number=  auto.width /2
var ptI:Number=  -auto.width/2

var vel_rot:Number=0
 
 function rotar():void
 {  
if (piso.hitTestPoint(MC.x+ptI,MC.y+ptB+5,true) && !piso.hitTestPoint(MC.x+ptD,MC.y+ptB+5,true))
 salida2.text="True",vel_rot+=0.3,ptB=auto.height/5,ptI=-auto.width/5
else   salida2.text="False"
 }

http://maxiwork.comoj.com/flash_arch/auto.swf


acá lo que hago es asignarle 2 puntos de referencia que es donde suponen estar las ruedas
y le digo que si una toca el piso y la otra no rote según que rueda toque o no el problema es
que cuando rota cambian los pt(Puntos de referencia), y si simplemente los actualizo el mc
se comporta totalmente diferente a lo esperado, no se si este modo que estoy intentando emplear es el adecuado.
Pido alguna sugerencia de como hacer funcionar bien este script o en caso de que este mal
encaminado pido una orientación a como deberia ser.
Saluda att. MAxxxxxxxxxx

Por MaxiiSan20

Claber

168 de clabLevel



Genero:Masculino  

Montevideo

firefox
Citar            
MensajeEscrito el 05 May 2011 03:13 am
lo que queres hacer no conviene con hittest, te recomiendo que busques una libreria de fisica como box2d

Por voices

43 de clabLevel



 

chrome
Citar            
MensajeEscrito el 06 May 2011 12:27 am
Gracias Voices pero me gustaría construir el código yo ya que es a nivel de aprendizaje lo que estoy haciendo y no me convence usar una librería, por eso busco mas que nada orientación para saber por que lado abordar.

Por MaxiiSan20

Claber

168 de clabLevel



Genero:Masculino  

Montevideo

firefox
Citar            
MensajeEscrito el 07 May 2011 08:03 pm
hacer algo es asi es bastante avanzado.

podes probar este tutorial, del que aprendi yo.

vas a necesitar un tiempo para entender e informarte mas buscando ebn google, ya que no explica todo.

basicamente te muestra el teorema SAT, que sirve para calcular el desplasamiento que se debe aplicar a un poligono para separalo de otro y evitsr que se superpongan.

es medio complicado hasta que lo entendes, pero tomandote un tiempo lo logras.

en este tutorial tenes una mustra en codigo de como aplicarlo, aunque esta en C#, pero igualmente se entiende :) la idea.

Saludos

Por voices

43 de clabLevel



 

msie
Citar            
MensajeEscrito el 08 May 2011 05:58 pm
Gracias, voy a estudiar el material y después comento.

Por MaxiiSan20

Claber

168 de clabLevel



Genero:Masculino  

Montevideo

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.