Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2017
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.55 KB | None | 0 0
  1. [SerializeField] float gravity = 10;
  2.  
  3. public void Attract ( Transform target )
  4. {
  5. Vector3 gravityUp = (target.position - new Vector3(transform.position.x, transform.position.y,target.position.z)).normalized;
  6. Vector3 bodyDown = -target.up;
  7.  
  8. Rigidbody rb = target.GetComponent<Rigidbody>();
  9. rb.AddForce(gravityUp * gravity);
  10.  
  11. Quaternion targetRotation = Quaternion.FromToRotation(bodyDown, gravityUp) * target.rotation;
  12. targetRotation.x = 0;
  13.  
  14. target.rotation = Quaternion.Slerp(target.rotation, targetRotation, 30.0f * Time.deltaTime);
  15.  
  16. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement