- Home /
"Free" rotation about a sphere
ok, so, I need to get a camera placed on a sphere with a rolling object on the surface. I am able to get gravity, as i am actively changing gravity based on the ball position versus the planet's center.
I have a camera nested inside a couple of gameobjects, but i need the camera to always look over the horizon from behind my ball. The problem is that i can't get the camera to behave as expected every time it reaches the south pole... i'm moving forward with the ball, and then all of a sudden the camera direction inverts and we're moving backwards.
now, the real question is, how can i take this gravity vector and manipulate the camera to ignore the world-space up vector? My current solution is below, but this is exactly my problem - stumped.
transform.up = -Physics.gravity;
^ edited as to what i actually meant.. I'll post a video to show the problem the moment i have the opportunity..
The LHS is a Vector3, while the RHS is a float, this shouldn't even compile. Why not just use
transform.up = -Physics.gravity;
?
I am not totally understanding the problem @pappapierre I guess what you need is to have your camera follow your "ball" gameobject around as this ball rotates around the place (like the roll-a-ball tutorial) but this is happening while "orbiting" around a larger sphere which is like a planet?
I would offer some advice but I am not totally sure that is what you mean?
the problem is that whenever my camera reaches the south pole of the "planet", the -physics.gravity vector messes with my forward direction, and the camera swivels uncontrollably.. i think it's a problem with the camera's local up, but i've found a work around in the meantime:
Using the bounding box of the object i'm following, i'm checking the apparent velocity, and using that value as a forward direction and gravity as the up direction... This does mean i have a second GameObject to worry about, but it also gives me alot more control over how the camera follows the object.
thanks for the replys though! i'll post a link to product when we're done.
am I would solve this by giving vector 3 lerp in to world
and as for camera I'd do same lerp and look at ball so camera doesn't rotate when ball does
why even use gravity if you don't want it
if you actually want round gravity