Jump to content
• Advertisement

How to model distortion of rubber surface due to gravity??

This topic is 4211 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi there, I have a grid laying on the xz-plane in 3d space and like to have a distortion like these used to visualize bending of (2d) space due to gravity (like in http://fusionanomaly.net/gravity.jpg, though the pic isn't very nice). Does anybody have an idea how to model this?? Which function is to be used to bend the grid / 2d surface? What are the parameters? It looks like a gaussian normal distribution or something. I'm not looking for a physically based method (which I doubt exists for such a crude simplification). I'll also need to compute the normals for the grid points to have a nice lighting of the bended suface :-). Thanks and greetings, Data

Share this post

Share on other sites
Advertisement
I think the picture you linked is illustrating gravitational potential energy (if you ignore the space-bending relativity aspect). The function is then inversely proportional to the distance from the center squared, unless the distance is less than the radius of the sun, at which point it depends on the sun's density. If a uniform density is assumed, the function becomes proportional to distance, ie linear. With a black hole, the density is focused at the singularity and the thing stays inversely proportional to the distance squared the whole way, which appears in illustrations like this as a sort of hole because of the asymptote.

Share this post

Share on other sites
Ehem, sounds cool. But do you have an equation? In fact, I don't really have objects with a mass or something. I'm only interested in this smooth bending effect. I'll have something like a radius of effect and a "distance" how far the central point is moved away orthogonal to the surface.

Share this post

Share on other sites
The gravity potential of any point
outside of the globe is
-GM/r
inside is
-GMr^2/R^3

r is distance of the point to center
R is radius of your star.

Share this post

Share on other sites
A completely non-physically accurate method is to visualize the gravitating body as producing a central force field, a repulsion at that, inversely proportional with respect to distance between force center and test point. Imagine the vertices of the rubber sheet as being pushed directly away from the force center by an amount proportional to the body mass, and inversely proportional to the distance. Of course, this is a purely fictional 'force' only used to 'remap' space.

For example, assuming R is the position vector of the mass, M is the mass, r is the position vector of an undeformed sheet vertex, then:

r'=r+M*(r-R)/((|r-R|)*(|r-R|))

where r' is the deformed position of the vertex.

[Edited by - Mastaba on April 9, 2007 11:30:20 PM]

Share this post

Share on other sites
@pingt Ok, but how do I get a translation of vertices from this?? Is it simply the vector between center of gravity C to my current point P that gets multipled by the factor iven by GM/r?? Like

P' = P + (P-C)*GM/(P-C)

@Mastaba I implemented your idea. It looks nice as long as the center of mass is somehow far enough away from the surface. If it get closer, the bending "explodes" somehow...

Share this post

Share on other sites
Sorry, I just noticed that this is very similar to what Mastaba has stated, isn't it??

Share this post

Share on other sites
Right, that explosive behavior is a result of simply modeling the central force field of a point mass. If you want to model the force field of an extended body, you have to modify it a bit once your test point is inside the body, or else constrain your model.

Share this post

Share on other sites
may I ask what you mean by "modify it a bit once your test point is inside the body"?? In which way modifying it? I'm sorry to ask such silly questions, but I don't know much about physics...

Or, to come back to pingt's approach, how are the vertices moved due to the gravity potential? If I'm right, the given equations give me a scalar. How do I get a displacement vector from that??

Cheers,
Data

Share this post

Share on other sites
Gravity due to a spherical mass of constant density, is a central force field, so the force at any test point is directly away or towards the force center. Also again, the potential does not move the vertices of the rubber sheet. That is, if you took an über sized actual rubber sheet and put it near a star or planet, it would not simply deform in the manner you see in the picture. It would do something much more complex. The picture you see is representing in a highly artificial fashion how gravity bends a 2D spacelike cross section of spacetime, not how gravity would make actual matter deform. So if you are simply wanting to model a dimple in a rubber sheet, what you have been given is a good starting point. If you are trying to actually model general relativity's bending of spacetime then that's a far more complicated topic, and certainly overkill for any game.

Share this post

Share on other sites

• Advertisement
• Advertisement

• Popular Contributors

1. 1
Rutin
32
2. 2
3. 3
4. 4
5. 5
• Advertisement

• 13
• 70
• 11
• 10
• 14
• Forum Statistics

• Total Topics
632967
• Total Posts
3009571
• Who's Online (See full list)

There are no registered users currently online

×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!