(02-11-2014, 03:23 AM)DreamScripters Wrote: when you throw a object fast enough in Amnesia and it collides with something it is going so fast that the computer itself can't calculate the collision fast enough to stop it from clipping/glitching
That's pretty much right. Basically a game has to work out where an object is for every frame, and there are only so many frames it can process within a second.
So a moving object can only have it's position calculated a limited number of times within a second, and the physics engine needs to know when one object is colliding with another, but again the time it has to work that out is limited.
So, if an object is moving so fast that within a single frame it can pass enough distance to go through a wall, then the physics engine will never know that there should have been a collision. One frame, the chair is on one side of the wall, then the next frame, the chair has moved, and now its the other side of the wall, the engine only thinks in frames & it can't process anything between a frame... so no collision!
Normally, a physics engine will use its own frames for calculation of collisions & such separate to the rendering engine frames (how much FPS you get running the game). I don't really know enough to say why, but afaik it's to ensure some consistency in physics behaviors independent of how fast the game is actually running. This basically means that if given the chance, a very powerful computer could process more physics 'steps' per second, and therefore increase the accuracy of the collisions, and get rid of those glitches! But, physics processing is generally expensive on the processor
Hope that explains it