Messiah - Physics Engine
After many years of using commercially available physics and collision libraries, iWare Designs decided to develop its own 3D physics and collision API called 'Messiah' for specific use in game development. The most up to date and high performance methods were used in the development of 'Messiah' making it ideal for gaming environments where speed and accuracy is of the essence.
- GJK (Gilbert-Johnson-Keerthi) distance algorithm.
- Broadphase uses multi axis Sweep and Prune technique.
- Discreet collision detection interface.
- Continuous collision detection interface for high speed bodies.
- Supports collision primitives including Trimesh, Polygons, Planes, Rays, Ray Segments, Orientated Bounding Boxes, Capsules, Cylinders, Ellipsoids, Spheres and Complex Convex Polyhedrons.
- Optimized collision algorithms for OBB to OBB, OBB to Sphere and Sphere to Sphere intersection.
- Minimum penetration distance calculation performed by Expanding Polytope Algorithm.
- Spatial hierarchy support including BVH and K-d Trees.
- Articulated rigid body dynamics.
- Sequential Impulse Solver.
- Stable time based integrator.
- Joint / Constraint support between rigid and static bodies.
- Fully featured contact and friction models.
- Group based contact solvers for multi-core systems.
- Support for dynamic, static and sensor type bodies.
- Implementation of default vehicle body.
- Support for sensor type materials.
- Open ended interface to contact points.
- Self contained memory manager and block allocator (Platform independent).
'Messiah' has been used in PC, PS2, Wii, 3DS, iOS, Android and OSX products. The API is platform independant.