What happened here?

Report bugs, registration issues, or just suggest some new features in this thread! Guaranteed to have at least 10% more dev attention than other threads!

What happened here?

Postby tombiv on Sat Aug 09, 2008 5:35 pm

tombiv
 
Posts: 1
Joined: Sun Aug 03, 2008 1:55 pm

Re: What happened here?

Postby Entity on Sat Aug 09, 2008 5:45 pm

Hehe, Collision detection is a pain if objects travel a greater distance per simulation tick than the thickness of the objects you are trying to detect interaction with. It's a rather common problem in simple physics models like this one.
So, not neccessarily broken in terms of this being a "bug" you can easily fix. It's just not equipped to deal with objects traveling at ludicrous speed at paper thin barriers.
The code needed to handle interaction at what essentially boils down to infinite resolution in both time and space gets pretty nasty, especially when there are more than 2 objects involved.

As a workaround, you can tweak your contraption a bit to catch the object at a point where it notices the collision.
User avatar
Entity
 
Posts: 425
Joined: Thu Jul 24, 2008 1:00 pm

Re: What happened here?

Postby pacifist on Sat Aug 09, 2008 6:37 pm

Entity is completely correct.

Things have been arranged so that under normal circumstances things will work out. But in the interest of fun I decided to to let the user levels push things beyond that comfortable level.

You trade the occasional oddity for the fun of an open playground.
User avatar
pacifist
Site Admin
 
Posts: 170
Joined: Fri Jul 04, 2008 8:38 pm

Re: What happened here?

Postby timewarp on Sat Aug 09, 2008 9:33 pm

Entity wrote:Hehe, Collision detection is a pain if objects travel a greater distance per simulation tick than the thickness of the objects you are trying to detect interaction with. It's a rather common problem in simple physics models like this one.
So, not neccessarily broken in terms of this being a "bug" you can easily fix. It's just not equipped to deal with objects traveling at ludicrous speed at paper thin barriers.
The code needed to handle interaction at what essentially boils down to infinite resolution in both time and space gets pretty nasty, especially when there are more than 2 objects involved.

As a workaround, you can tweak your contraption a bit to catch the object at a point where it notices the collision.

Usually, a quick fix to that issue is to check collision on a line from the object's current and previous position. You wouldn't have to have it do this all the time, just when the object is traveling faster than the sampling rate will account for.
timewarp
 
Posts: 124
Joined: Wed Aug 06, 2008 3:33 pm

Re: What happened here?

Postby Entity on Sun Aug 10, 2008 8:00 am

timewarp wrote:
Entity wrote:Hehe, Collision detection is a pain if objects travel a greater distance per simulation tick than the thickness of the objects you are trying to detect interaction with. It's a rather common problem in simple physics models like this one.
So, not neccessarily broken in terms of this being a "bug" you can easily fix. It's just not equipped to deal with objects traveling at ludicrous speed at paper thin barriers.
The code needed to handle interaction at what essentially boils down to infinite resolution in both time and space gets pretty nasty, especially when there are more than 2 objects involved.

As a workaround, you can tweak your contraption a bit to catch the object at a point where it notices the collision.

Usually, a quick fix to that issue is to check collision on a line from the object's current and previous position. You wouldn't have to have it do this all the time, just when the object is traveling faster than the sampling rate will account for.


While that would work, it would break a huge number of current contraptions ;)
User avatar
Entity
 
Posts: 425
Joined: Thu Jul 24, 2008 1:00 pm


Return to Feedback and Problems



Who is online

Users browsing this forum: No registered users