Hola a todos.
Vamos a ver, que yo me estoy haciendo un cacao en la cabeza bonito bonito, y necesito que alguien experto en Unity me ilumine el movimiento de los objetos porque yo no se la diferencia entre:
- Usar Rigidbody.Velocity para mover algo
- Usar Rigidbody.MoveToPosition para mover algo
- Usar Transform.Translate para mover algo
- Usar Rigidbody.Addforce para mover algo
Da igual el tutorial que me vea de Unity, que cada uno lo hace de una forma diferente, al final el resultado es el mismo, que ese objeto se mueva... pero yo no entiendo las diferencias entre esas cuatro cosas, sin pensar si aún se me escapa alguna que desconozca..
Según mi criterio cada cosa sirve (Corregidme si me equivoco) para:
Rigidbody.velocity mueve el objeto según las direciones de los ejes del Vector dado, alterando su velocidad y haciendo que el objeto se mueva. Se usa en FixedUpdate()
Rigidbody.MoveToPosition mueve el objeto a una posicion dada por un Vector, es decir, lo mueve directamente a esa posición. Se usa en FixedUpdate()
Transform.Translate no tengo ni puta idea, pero creo pensar que se mueve en un vector dado. Se usa en Update()
Rigidbody.Addforce le aplica una fuerza que hace mover a un objeto con físicas en direccion donde se ha aplicado la fuerza. Se usa en FixedUpdate()
Un saludo y gracias.