why Bullet demos feel like happening on the moon?

abaraba
Posts: 56
Joined: Thu Jun 19, 2008 7:54 am
Contact:

why Bullet demos feel like happening on the moon?

Post by abaraba »

hi,

eeem.. is it just me or is there something wrong with gravity in Bullet...

it just feels like everything is happening on the moon, and i mean for both effects - gravity seems too weak and the lack of air resistance, so as a result its frequent to see objects spin way too much and too fast... and dare i say - fall too slow?

for example i set gravity to -50 rather than -10 to get more realistic *bounces*

whats wrong with my eyes?


also,
the new bunny-car demo, as soon as i try to control it bunny spins and jumps... then it kind of "floats" in "free fall" for a quite some time and when it finally touches the ground it spins and bounces again with even more enthusiasm - accumulated energy?

..sometimes it feels like slow-motion and sometimes spins frantically... it looks like there is to much energy/forces created on the impact which seem to mostly 'leak' in too much angular velocity.. in the similar way there seem to be a lack of dampening as well, which only complements the error of the 1st effect.. or so it would seem by looking at it from here

maybe, when calculating energy transfer on impact, some other dampening factors should be taken into account, beside air resistance the object, as a whole, should maybe absorb (nullify) more energy and transfer much less to linear/angular velocities depending, beside the mass, on the size, contact area and maybe some new variable like density - and if i wanted to modify Bullet to do exactly that, what classes/functions in Bullet library i would want to modify? ..or is there more practical way to customise collision response without directly changing Bullet source code?


cheers
Last edited by abaraba on Thu Aug 21, 2008 3:29 am, edited 2 times in total.
AlexSilverman
Posts: 141
Joined: Mon Jul 02, 2007 5:12 pm

Re: why Bullet demos feel like happening on the moon?

Post by AlexSilverman »

As for the moon-like simulation, I think this is a question of scale. The simulations are of arbitrarily sized objects, with nothing there for reference. When you use real-world values and sizes, everything looks pretty good, in my opinion.

- Alex
abaraba
Posts: 56
Joined: Thu Jun 19, 2008 7:54 am
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by abaraba »

hi,

i see what you mean,
but do you confirm that there is some "moon-like" or "seem-too-light" feeling in the demos?

basically i want to make sure its not some weird bug with my graphics card or anything else but how it was intended to be, it just seem so obviously wrong ..and easily fixable i would think

edit:
to clarify,
i see you "acknowledge" moon-like behaviour, im just not sure if you're suggesting that it only *appears to some people*, and if we look more carefully we can see its actually ok,
OR
you're saying -"yes, its like on the moon, but *all animations look like that* when there are no textures or other ways to reference sizes and distance relations"?


cheers
Last edited by abaraba on Thu Aug 21, 2008 8:10 am, edited 1 time in total.
sparkprime
Posts: 508
Joined: Fri May 30, 2008 2:51 am
Location: Ossining, New York
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by sparkprime »

You assume the objects in the demos are only 30cm wide but they are actually several metres. This is what a cargo container looks like if you drop it from a crane. If you study the maths, you'll see why. Bigger objects that are further from the ground will only take the same time to hit the ground if you increase gravity appropriately.

It is somewhat cheating though. The physics engine will work much better if you use large objects or a small value for gravity, because the objects will penetrate less far into each other per simulation step when stacked.
abaraba
Posts: 56
Joined: Thu Jun 19, 2008 7:54 am
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by abaraba »

i disagree passionately,
more i look at it and more i think about it, i realize that scale has nothing to do with this..

i'd never say, and im pretty sure i saw cargo container falling of the crane, that it would be bouncing around like a balloon and spinning like a coin... shell we find the video on youTube and compare it?

so, how big or small should i imagine bunny-car is to justify 5-10seconds "free fall", no object on earth regardless of size/mass can bounce with more energy than before and be sustained in mid-air that long... unless that demo simulates some balloon physics

i dont know how big or small i should imagine all the objects in the Bullet demos to justify them behaving like balloons, i just didn't see anything like it in real life.. whether im looking at huge building being demolished or a stack of dominoes falling down... even if i missjudging distances, stuff needs to come to rest sooner, so thats time related observation and should be constant

i mean, if its not VERY, VERY obvious what "visual errors" im talking about then i must assume something is wrong with my computer... it would be just too crazy if everyone actually saw this anomaly and not realize huge difference with real life behaviour


and im not the only guy with "broken computer"
*Physics world seems outer space* http://www.bulletphysics.com/Bullet/php ... tion#p9522


>>"Bigger objects that are further from the ground will only take the same time to hit the ground if you increase gravity appropriately."

but size is not a factor when it comes to gravity without simulating air-friction, therefore you must be wrong whatever is you want to say there ;-)


>>"If you study the maths, you'll see why"
im afraid that is where the origin of the error is,
how objects bounce it has, it would seem in most of the other cases but balls/spheres, quite a bit to do with material properties and less so with Newton physics/mathematics of objects action/reaction and more so with inner workings of energy transfer and interaction on object structure - atomic properties, molecular bonds and other "inner" material stuff that dictates how object will bounce OR not bounce at all

so in Bullet,
bricks, no mater what the size, appear as if they were made out of paper filled with hot air.. at least on my computer and in my mind, but i may be crazy and this computer may be a dead cat in fact, who am i to say?
AlexSilverman
Posts: 141
Joined: Mon Jul 02, 2007 5:12 pm

Re: why Bullet demos feel like happening on the moon?

Post by AlexSilverman »

sparkprime said it better than I did, but that's what I meant :) The objects modeled in the demos are large and react accordingly, only it doesn't appear that way because there is nothing there to give you any sense of scale. I have used Bullet in 2 games now and haven't seen anything that I'd classify as problematic. the objects bounce and react as though they were solid. Of course, you can change the restitution values for everything so that things bounce more or less, but I'd hesitate to say that there's a problem in Bullet with this.

I highly encourage you to set up a scene with some objects with realistic values (object sizes, gravity, etc) and see what you think. I accept this behavior in the demos because 1) I've never seen a 1 meter cube (or cylinder or sphere) bounce around in a vacuum with other 1 meter objects, so I don't have anything to realistically compare it to, and 2) I have set up scenes with objects that have an expected reaction and everything behaves properly when properly tuned.

I hope this makes sense on some level :)

- Alex
sparkprime
Posts: 508
Joined: Fri May 30, 2008 2:51 am
Location: Ossining, New York
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by sparkprime »

abaraba wrote: i'd never say, and im pretty sure i saw cargo container falling of the crane, that it would be bouncing around like a balloon and spinning like a coin... shell we find the video on youTube and compare it?
You're confusing the issue of rigid body dynamics with deformation.
i dont know how big or small i should imagine all the objects in the Bullet demos to justify them behaving like balloons, i just didn't see anything like it in real life.. whether im looking at huge building being demolished or a stack of dominoes falling down... even if i missjudging distances, stuff needs to come to rest sooner, so thats time related observation and should be constant
A large building collapsing is not a rigid body.
>>"Bigger objects that are further from the ground will only take the same time to hit the ground if you increase gravity appropriately."

but size is not a factor when it comes to gravity without simulating air-friction, therefore you must be wrong whatever is you want to say there ;-)
the demos are in a vacuum therefore there is no air resistance
>>"If you study the maths, you'll see why"
im afraid that is where the origin of the error is,
how objects bounce it has, it would seem in most of the other cases but balls/spheres, quite a bit to do with material properties and less so with Newton physics/mathematics of objects action/reaction and more so with inner workings of energy transfer and interaction on object structure - atomic properties, molecular bonds and other "inner" material stuff that dictates how object will bounce OR not bounce at all
Only offline engineering applications tend to model such things. This is not what bullet is for. It is very inefficient and adds very little to realism.
so in Bullet,
bricks, no mater what the size, appear as if they were made out of paper filled with hot air.. at least on my computer and in my mind, but i may be crazy and this computer may be a dead cat in fact, who am i to say?
As long as the step size and solver iterations are sufficient, bricks will behave like uniformly-dense non-deformable indestructable cuboids of matter falling and colliding in a vaccuum.

This is exactly what bullet claims to do and this is what it does.

If you want to add fluid resistance you can use damping or do whatever you need to to calculate the impulses to apply, e.g. doing a front projection or even a full analysis. If you want deforming, you can use the new soft body stuff. Most people don't need any of this though.
abaraba
Posts: 56
Joined: Thu Jun 19, 2008 7:54 am
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by abaraba »

...like when they film a movie with miniatures and then speed it up to look more realistic... or is that completely opposite to this?

tho,
i agree that Bullet library is great and that it can be adjusted easily to produce desired results..

but still,
since i posted this, i found on this forum that in practice people actually seem to increase gravity value to achieve "more realistic" feeling too, sometimes even to -1000

so, as this is a matter of opinion,
i still think Bullet demos need to speed up free fall and slow down bouncing and spinning



sparkprime,
>>"You're confusing the issue of rigid body dynamics with deformation."
no, my opinion is simply that objects should come to rest sooner...


>>"A large building collapsing is not a rigid body."
ok, that explains everything

>>"the demos are in a vacuum therefore there is no air resistance"
hey, thats what i said -no air resistance- so what you said was not making sense as you were relating "Bigger objects" and "increase gravity"

>>Only offline engineering applications tend to model such things. This is not what bullet is for. It is very inefficient and adds very little to realism."

i dont agree, many things instead of "modeled" can be approximated... like this approximation of free fall that we are talking about

>>"As long as the step size and solver iterations are sufficient, bricks will behave like uniformly-dense non-deformable indestructable cuboids of matter falling and colliding in a
vaccuum."

ah.. cuboids, they're truly super


tho,
the really helpful answer would come in some form similar to:
1.) it only *appears to some people*, and if you look more carefully you'll see that its actually ok
2.) yes, its like on the moon, but *all animations look like that* when there are no textures or other ways to reference sizes and distance relations"?
3.) everything is perfect.. your cat is slow, turn it off and go to sleep
sparkprime
Posts: 508
Joined: Fri May 30, 2008 2:51 am
Location: Ossining, New York
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by sparkprime »

One thing I do agree about is that they would look better if they were on a more intuitive scale, e.g. actual barrels sizes.
abaraba
Posts: 56
Joined: Thu Jun 19, 2008 7:54 am
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by abaraba »

>>One thing I do agree about is that they would look better if they were on a more intuitive scale, e.g. actual barrels sizes.

well, that would prove it to me.. im not familiar with these demos with stacks (didnt get that far with Bullet), so im not sure how to go about changing everything to put it to that scale...

if thats simple matter for you, please scale down one of these Bullet demos so i can compare before and after and see for myself how that illusion came to be


...anyway,
whats up with new bunny-with-wheels demo?

is that some kind of hot-air balloon... that is not earth gravity, right?

when it jumps, it literary *floats* not falls, do you not agree?

can you control it for more than a second?


id like to see bunny-car demo scaled to size where the tires are the size of normal car wheel in real life... cant wait to see how scaling up or down can increase or decrease the time it spends in a free fall.. but ill stand corrected
DannyChapman
Posts: 84
Joined: Sun Jan 07, 2007 4:29 pm
Location: Oxford, England
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by DannyChapman »

abaraba wrote:i disagree passionately,
i mean, if its not VERY, VERY obvious what "visual errors" im talking about then i must assume something is wrong with my computer...
1. It is possible that your computer returns weird timing results (I saw this very occasionally a while back with one or two people having my flight sim run too slow/fast - I think most likely on laptops where there's CPU throttling or something going on).

2. Why don't you just test what you see. Set gravity to 10, drop an object from a height of 100, and time (with a stopwatch) how long it takes to hit a ground plane at a height of 0 (time should be sqrt(2 * 100 / 10) = 4.47 seconds. Or to check the timing just modify one of the demos so it prints out a message every 10 seconds (and check it really comes out every 10 seconds). These tests will be much more decisive than your intuition...
abaraba
Posts: 56
Joined: Thu Jun 19, 2008 7:54 am
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by abaraba »

1. It is possible that your computer returns weird timing results (I saw this very occasionally a while back with one or two people having my flight sim run too slow/fast - I think most likely on laptops where there's CPU throttling or something going on).
you know... that is my best guess actually,
tho chances are slim - im using Bullet on two laptops and 3 OS, 2xLinux and Xp... for couple of months now, they both set to full throttle, everything works perfect.. Bullet library works perfect for me (after setting a few parameters over or there) and its actually just the Bullet demos with this slight, weird, lightweight feeling

it was the first thing i noted about Bullet, it struck me straight away with 1st demo, but for the longest time i couldnt even point my finger at it, i didnt know what felt wrong and i never thought about it as i went on developing my own code that worked as i thought it should..

its just when i downloaded new Bullet 2.70 and saw all the demos all over again, especially new bunny-car, when i said - hey, this is really, really, terribly, horribly, without-a-doubt wrong.. dont get me wrong, i love the demos, they're supercool :-)
2. Why don't you just test what you see. Set gravity to 10, drop an object from a height of 100, and time (with a stopwatch) how long it takes to hit a ground plane at a height of 0 (time should be sqrt(2 * 100 / 10) = 4.47 seconds. Or to check the timing just modify one of the demos so it prints out a message every 10 seconds (and check it really comes out every 10 seconds). These tests will be much more decisive than your intuition...
maybe you're right,
it didnt occur to me to do such a basic test as everything seem to be fine on 2 computers, used Bullet with glut timer and in SDL app with SLD_timer, having "expected" results on variable time intervals or fixed 1/60, 1/30, 1/100..


what really, really bugs me tho,
is that everyone seem to know what iam talking about, but everyone seem to "tolerate" it... just as i did, its real easy to just wave hand at that.. until bunny rolled in that is

i dont believe "scale" argument and no one has commented on that bunny-with-tires demo which without a doubt floats in mid-air very unrealistically and is most obvious example of what im talking about.. unless thats very, very cool simulation of the hot-air baloon thermodinamics


edit:
my laptops are 1ghz & 2ghz wih ati video dx9, opengl 2.1.. can run all games, shaders and stuff with no problem.. contrary to logic on 2ghz with ati Xpress and winXP demos do apparently run much slower, but effect with bunny seem proportional while on 1ghz with radeon9600 demos seem to run full speed, is there any way to know if they running full speed? i believe the later laptop runs in full speed as i can turn wheels quite fast and it seems very responsive - it takes about 2.5 seconds to rotate front wheels full 360

tried to find a video on youTube to compare but there arent any from the basic Bullet demo collection, tho some of those Bullet videos on youTube do exibit that slow-motion thing.. id like to see video with new bunny-car demo


why do bullet demos slow down (on slow computers) instead of just droping framerates?


this thing should not be so foggy and matter of opinion.. i think
Last edited by abaraba on Fri Aug 22, 2008 1:07 pm, edited 2 times in total.
AlexSilverman
Posts: 141
Joined: Mon Jul 02, 2007 5:12 pm

Re: why Bullet demos feel like happening on the moon?

Post by AlexSilverman »

abaraba wrote:i dont believe "scale" argument
Again, I strongly encourage you to create your own demo with objects that you can predict the movement of. I notice the behavior you mention, and I do tolerate it, in the demos, because I do not see the behavior in my own applications with objects that are sized like objects with real world counterparts.
abaraba wrote:why do bullet demos slow down (on slow computers) instead of just droping framerates?
The bullet demos are frame based, meaning that the speed of the simulation is based on the rate of framed being rendered. That is to say that each frame, the simulation steps forward by a constant amount of time (most likely 1/60th of a second). This is in contrast to the way some simulations behave, where each frame the simulation steps forward by the amount of time that has elapsed since the last frame. This would result in the type of display you mention.

- Alex
abaraba
Posts: 56
Joined: Thu Jun 19, 2008 7:54 am
Contact:

Re: why Bullet demos feel like happening on the moon?

Post by abaraba »

Again, I strongly encourage you to create your own demo with objects that you can predict the movement of. I notice the behavior you mention, and I do tolerate it, in the demos, because I do not see the behavior in my own applications with objects that are sized like objects with real world counterparts.
yes, sorry i should have been more clear about it,
Bullet works great for me too and i dont see any of the problems in my demos, they are too without any "scale", but look fine - its just Bullet demos, barely noticeable, but bunny-car definitely very obvious "low-gravity" effect, i think vehicle even flies faster upwards as it spins faster... it surely did overcome "escape velocity" at some point and i could see a floor disappear behind far clipping plane underneath

..since the last frame. This would result in the type of display you mention.
wait a second,
..so you know the cause and solution to the problem?

i suppose we only need to change stepSimulation arguments to something like (dT, 10, dT), is that it? ...and my computer is indeed too slow?

well, that sounds reasonable, going to try...


thought,
cant see a good reason why handle computer animation like that, didnt we all learn from those DOS games, huh? speed of computer should not dictate speed of animation, but only number of times these animation frames/screens can be rendered in a second, right?


cheers
AlexSilverman
Posts: 141
Joined: Mon Jul 02, 2007 5:12 pm

Re: why Bullet demos feel like happening on the moon?

Post by AlexSilverman »

abaraba wrote:thought,
cant see a good reason why handle computer animation like that, didnt we all learn from those DOS games, huh? speed of computer should not dictate speed of animation, but only number of times these animation frames/screens can be rendered in a second, right?
I'm not sure if this was Erwin's motivation or not, but to me, when you're writing something that has to work independent of which system architecture it's running on, it's much simpler to not worry about things like system timers, and in this case, just leave the demo frame based and trust that if people want it otherwise on a specific platform, they'll make it so.

- Alex
Post Reply