We have implemented our own collision and response system using ellipsoid with the tutorials from
http://www.peroxide.dk/download/tutoria ... tut10.html
but the management decided to use 3rd party library instead because of many advantages instead of rewriting what has already implemented by various developers. People recommend me to take a look at Bullet Physics engine because it is becoming popular. I also read from Wikipedia that Bullet physics engine was used on the last GTA game, our game is similar to GTA and makes us more interested in using Bullet physics engine.
My question is, how can we adapt ellipsoid collision and response algorithm with bullet's engine collision API?
what we are doing now is like this (in pseudocode):
Code: Select all
Actor::Update()
{
...
PerformCollision( pVertices, currentPosition, currentVelocity * elapsed, &outPosition, &outVelocity, ellipsoidRadius);
currentPosition = outPosition + outVelocity;
outVelocity -= friction;
...
}
Code: Select all
PerformCollision()
{
//convert in ellipsoid space
foreach face in the mesh
{
//convert face to ellipsoid space
//....
CheckCollide( );
}
PerformResponseSlide()
//set new position
//set new velocity
}
Please help us
thanks,