- Home /
Please help finding center of object
I am trying to write a code for a gravity pull towards a planet. I want to use a sphere collider as a trigger to start adding force to the object its manipulating towards the planet.
So OnTriggerStay I can retrieve the planets position to use with AddForce but its not the center of the planet. I tried bounds.center and it is the same as the transform.position vector3. Now I tried to put a empty gameobject on the planet and I would like to change the planets center to that of the empty gameobject so I can therefor retrieve that data without the use of getcomponent. Heres some code I was trying.
using UnityEngine;
using System.Collections;
public class PlanetGravity : MonoBehaviour {
public Rigidbody bullet;
public GameObject center;
// Use this for initialization
void Start () {
Vector3 centervector = new Vector3(center.transform.position.x, center.transform.position.y, center.transform.position.z);
this.transform.position.Set(center.transform.position.x, center.transform.position.y, center.transform.position.z);
this.renderer.bounds.center.Set(center.transform.position.x, center.transform.position.y, center.transform.position.z);
Debug.Log("Center = " + this.gameObject.renderer.bounds.center);
Debug.Log("Position = " + this.transform.position);
//Debug.Log("Mesh = " +
}
void OnCollisionEnter(Collision collision){
//bullet = collider.rigidbody;
//b
}
// Update is called once per frame
void Update () {
}
}
Answer by LiterallyJeff · Jun 18, 2015 at 07:04 PM
You want to add a force in the DIRECTION of the planet. You need a direction vector which points towards the planet.
To get the direction you can do this:
Vector3 direction = (orbiter.transform.position - planet.transform.position).normalized;
then multiply by the float force to point the force in that direction
Vector3 directionalForce = direction * force;
then you can do:
AddForce(directionalForce);
Which should push your object towards the planet.
Your answer
Follow this Question
Related Questions
How to get the center point of an object without any renderers? 2 Answers
How do you get the world-space position of a sprite with a custom pivot? 1 Answer
Instantiated Game Object is at the wrong location. 1 Answer
center of object group 0 Answers
How to get distance from position to transform bounds 1 Answer