Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark Physics & Dark A.I. & Dark Dynamix / [Dark Physics] DP phenomena?

Author
Message
The WhiteDragon
20
Years of Service
User Offline
Joined: 14th Jan 2004
Location: unknown
Posted: 10th Sep 2006 20:37 Edited at: 10th Sep 2006 20:40
I was playing with DP for a while and I came to few things that I couldn’t make the way I wanted so after more playing with those problems I came to some conclusions that either I do it wrong or DP doesn’t do the work he should do.

Most annoying thing that I continuously see in my project is the “blasting rock” as I call it.
I was testing how to make a boulder composed of 10 (in same cases up to 20) stone shards that are connected with breakable joints (joints should break like in real world, not by themselves but if I make a quite big force on them). The joints do their work and actually connect the shards together but joints have other “weird” thing that I’ll cover up later.

Now the actual “blasting rock” phenomena. Whenever I start a simulation with such composed boulder (boulder composed of 10+ stone shards connected with joints) that boulder simply never stops rotating, spinning and even jumping around the simulation area! I was watching that boulder for 20min (he was placed in square area with walls so he doesn’t drop through floor) and he was still spinning, jumping and doing his acrobatic things like he’ll never stop.

Very similar thing happens if the stone shards are not connected but just placed to the ground one on each other to resemble a boulder (but shards aren’t connected with joints). After the simulation is started they simply catapult each other to sky like there was a hand grenade below them. After they jump from the sky down to the ground they stop moving after a while but that “blast” shouldn’t happen lol. I know they come to collision detection because they are on each other but gap between them is so low that they can’t simply produce that big blast effect.

Also when I actually try to “destroy” that boulder (I used classic velocity ball like in DP examples) the shards do move a bit from each other like the joint is broken but they never stop spinning, rotating etc. Also the joints seem to exist even if they are totally destroyed. I tried all max break force values. From 1.0 to 1000.0

So after this I started to wonder. Why the simulation doesn’t go to sleep mode like it should after some time and why do joints act like they are made of gum and not wood or some other fast breaking material?

Thank you for any suggestion or help.


EDIT: Using DP 1.01 in software mode, Windows XP, newest DirectX, latest DBPro.

"Enjoy the moment... forget the past and the future. Eternity is here..."
Mike Johnson
TGC Developer
21
Years of Service
User Offline
Joined: 13th Sep 2002
Location: United Kingdom
Posted: 10th Sep 2006 20:45
For consistent and stable simulation results it is necessary to take care when choosing the magnitude of quantities involved in the simulation. It is important to keep the distances, masses and forces involved in the simulation within a tight range to avoid loss of precision. The exact range of values you use is dependent on the scale of the world, the complexity of the joints, number of contacts etc.

Before you begin designing your physically simulated levels etc, it is probably a good idea to come up with guidelines for these values.

An example might be:

Quantity
Range/Value

Mass
1-10

Position
-4000 - 4000

Gravity
-9

Solver Iterations
5

It may also help to investigate the sleep linear / angular velocity settings on rigid bodies.

If you can post a small example program demonstrating this problem that would be helpful.
The WhiteDragon
20
Years of Service
User Offline
Joined: 14th Jan 2004
Location: unknown
Posted: 10th Sep 2006 21:01 Edited at: 11th Sep 2006 00:08
Right sorry...

The quick made source code but shows the "blasting rock" thing.


The stone model is attached.

EDIT: made a quick joint simulation also, it uses the same stone model, source code is:


"Enjoy the moment... forget the past and the future. Eternity is here..."

Attachments

Login to view attachments
JerBil
19
Years of Service
User Offline
Joined: 8th May 2004
Location: Somewhere along the Z axis...
Posted: 11th Sep 2006 01:05
Your stone flies apart with no ground and no gravity, so the
problem may be with the stone/joints or something. Looks cool, though.

Ad Astra Per Asper
imekon
17
Years of Service
User Offline
Joined: 3rd Jul 2006
Location:
Posted: 11th Sep 2006 14:08
I tried to make a box with a lid out of DBP primitives and then join them all together with joints - as soon as I ran it, it went into orbit, spinning and rocketing around the place.

I figure it was because I had created objects that were inside each other, and set the joints so they had to stay that way - which causes physics to give instabilities and away we go.

Once I set up with the boxes correctly aligned, the exploding/spinning effect went away. I think what happens is the physics tries to correct as the you can't have one object inside another, then the joint tries to reassert itself, and you end up with a group of objects fighting themselves. Take away the objects inside each other and it stabilises.

I did manage to get a box with a lid that worked and found a way to press a key to make the lid open...

"Reality Bites"

Login to post a reply

Server time is: 2024-04-25 17:14:02
Your offset time is: 2024-04-25 17:14:02