I'm planning on making a Physics engine. I got a few ideas of what I want to put into it (Fast Collision detection, gravity, friction, ragdoll etc) but I was wondering if anyone here could write me a checklist of sorts of what I should include in it.
Example:
A good Physics engine needs:
1. Good quality fast collision detection
2. Dynamic Individual Gravity for all entities
3. Ragdoll
4. Simple fluid simulator
5. etc...
Basically make a "Santa, for Christmas I want..." feature wishlist for a Physics Engine
Also I was going to try and design the engine a but like Irrlicht. Ya know, something really simple and easy to use.
Code: Select all
// Use physics engine
#include "PhysicsEngine.h"
using namespace pe;
...
// Create Physics Engine Device
PhysicsEngine* Device = createPhysicsEngine(gravity, game-mode/simulation-mode, etc...);
// Add a Cube-shape Bounding Box to represent a car
Entity* Box = Device->addCubeEntity(X,Y,Z);
// Edit a Entity
Box->setGravity(newGravity);
// While in game loop, run physics and update all entities.
while(game==run)
{
do stuff...
Device->Simulate(time);
... do more stuff
// Update car position based on the Physics engines output
CarX = Box->X;
CarY = Box->Y;
CarZ = Box->Z;
.. finish doing stuff
}
// Then to finish everything and close up
delete Device;
Any thoughts and opinions are appreciated!