Unity Spain

Post Antiguos => General (Antiguo) => Mensaje iniciado por: DGE en Junio 28, 2016, 09:13:39 PM

Título: Ayuda AddRelativeTorque
Publicado por: DGE en Junio 28, 2016, 09:13:39 PM
Bueno pues eso estoy moviendo una nave con física y uso AddRelativeTorque para girarla pero al momento de rotar la nave se modifican los ejes vamos que la nave se inclina la idea es que no importa si giro así arriba o a los lados, evitar que la nave se incline alguna forma de que esto no pase? con transform,rotation = quaternion.Euler(); no pasa eso pero no se ve bien :/ el movimiento
 
https://www.youtube.com/watch?v=G1-VzyK1Yuk (//%5Byoutube%5Dhttps://www.youtube.com/watch?v=G1-VzyK1Yuk%5B/youtube%5D)
Título: Ayuda AddRelativeTorque
Publicado por: Braltor en Junio 28, 2016, 09:49:24 PM
yo lo uso en el controlador de nave de mi juego (//<___base_url___>/topic/34411-android-space-wing/) y no me da problemas... usalo con el parametro ForceMode.VelocityChange
Título: Ayuda AddRelativeTorque
Publicado por: DGE en Junio 28, 2016, 10:51:18 PM
ya probé con los diferentes parámetros pero sigue igual yo uso Force ya que usa la masa y se siente mas realista dejo un video de rigidbody y transform es a lo que me refiero :/
 


   
eature=oembed" width="480">

 
que ve
Título: Ayuda AddRelativeTorque
Publicado por: Braltor en Junio 29, 2016, 12:20:06 AM
no se q estaras haciendo, mi nave se mueve como esperarias en tu ejemplo del transform... nada mas armo el vector con las entradas de los ejes y lo agrego al torque con ese parametro, sin mas
Título: Ayuda AddRelativeTorque
Publicado por: DGE en Junio 29, 2016, 01:45:39 AM
ese es mi script
 

#pragma strict
var FMov : float;
var FRot : float;
function FixedUpdate(){
var H : float = Input.GetAxis("Horizontal");
var V : float = Input.GetAxis("Vertical");
var X : float = Input.GetAxis("Mouse X");
var Y : float = Input.GetAxis("Mouse Y");
GetComponent.<Rigidbody>().AddRelativeForce(H * FMov * Time.fixedDeltaTime,0,V * FMov * Time.fixedDeltaTime, ForceMode.Force);
GetComponent.<Rigidbody>().AddRelativeTorque(Y * FRot * Time.fixedDeltaTime,X * FRot * Time.fixedDeltaTime,0, ForceMode.Force);
}
Título: Ayuda AddRelativeTorque
Publicado por: Braltor en Junio 29, 2016, 03:36:08 AM
yo uso Horizontal y Vertical para el torque
Título: Ayuda AddRelativeTorque
Publicado por: kaito en Junio 29, 2016, 09:24:56 PM
Como dice la documentación,
 
AddRelativeTorque: Adds a force to the rigidbody relative to its coordinate system. Es decir, que considera las coordenadas locales del GameObject.
 
Utiliza AddTorque en lugar de AddRelativeTorque, que no considera las coordenadas del GameObject.
Título: Ayuda AddRelativeTorque
Publicado por: DGE en Junio 30, 2016, 01:58:58 AM
ya probé pero no sige igual es como si moviera los ejes del objeto en vez de mover el objeto sobre los ejes, no entiendo  :/