Physical engine analysis report
Preface:
The physical engine has been an important part of the game engine. In the 3D game, the developer's pursuit of physical performance is becoming more and harsh, so the physical engine will inevitably branch from the graphics engine, as a special target, this is a trend. Recently, the hardware PPU (Physics Processing Unit), Sega, Ubisoft, EPIC, developed by Ageia, USA, is the first to support this technology, and EPIC even indicates that this technology is integrated into the UREAL3.0 engine. From the above cases, the physical engine has been visible to the spot.
The general game engine includes physical modules, but we discuss today is a professional physics engine, which is Havok, Vortex, Ode, Novodex, Takamak, etc. The engine will be transversely compared to these engines.
Brief description:
Ø HAVOK
http://www.havok.com
Introduction:
HAVOK has support for PS2, Xbox, Gamecube, and PC multiple game platforms. It is also a partner of the world's top game company Valve (Half Life), Pandemci, Remedy, etc. This physics engine has supported various types of games, including Racing Game, First-Persion Shooter, Mmogs, Adventure Games, Puzzle Games, and more. Hovak has also been responsible for the partial effect of movie Matrix.
success case:
Crash Nitro Kart, Half-Life 2, Max Payne 2, Medal of Honor, F.E.A.R., Lord of The Rings: Middle Earth Online.
Ø VORTEX
http://www.cm-labs.com/
Introduction:
CMLABS is different in the direction of HAVOK focuses, and he is focusing on the application of engineering, not the game field. Specially attack the machine simulation, so pursue the accuracy of the calculation.
Because his partners are mostly some non-game companies, it will not be introduced here.
Ø ODE
http://www.ode.org/
Introduction:
ODE is an open source engine that supports cross-platform. ODE can efficiently simulate rigid dynamics, such as simulating cars, as well as various objects in a real environment. There are already many computer games that have been used in this development library.
success case:
Bloodrayne2, Xpand Rally, 18 Wheels of Steel: Pedal to The Metal.
Ø NOVODEX
http://www.ageia.com/novodex.html
Introduction:
Novodex is maintained by company AGEIA, developing PPUs, so it is undoubtedly the most advantageous thing for future PPU hardware support. Novodex is a physical engine that simulates rigid body dynamics, supports speed, acceleration, momentum, impulse, collision, and so on. Novodex's development library supports cross-platform, multi-threaded, high-speed collision detection, etc., which is specifically optimized to automotive physics simulation.
Case:
According to official documents, there have been more than 60 game studios, companies and research institutions adopt Novodex technology.
Ø takamak
Http://www.tokamakphysics.com/index.htm
Introduction:
Takamak is a physical engine developed by David LAM. The unique algorithm is used to improve the simulation efficiency as much as possible to reduce the operation of the matrix. Case:
There is a intellectual game Bontago uses this engine, mainly from the physical performance of the rule polygon.
Lateral comparison
Hovokvortexodenevodextakamak Development Corporation / Author Hovokcmlabsrussell Smithageiadavid LAM version 32.30.5
2.1.21.21 Date of issue 2005.32004.72004.52004.112005.3 Supporting C development is to be the document / demo Detailed detailed detailed detailed detailed license business price Need to negotiate commercial price Need GNU LGPL / BSD / price and use Need to negotiate business prices Need to negotiate free technical support Comprehensive and comprehensive and less comprehensive non-other NANA open source support PPUNA
The characteristics of each engine:
Hovok
Collision Detection - Including Continuous Physics
Dynamics and constraint SOLVING
Vehicle Dynamics
Data Serialization and Art Tool Support
Visual debugger for in-game Diagnostic Feedback
Vortex
Fast Rigid-Body Dynamics
Accurate Collision Detection
Stable consTRAINT SYSTEM
CompRehensive Vehicle Dynamics
Object Oriented C / C API
Cross-Platform: Microsoft Windows 95-98, NT, 2000, XP, SGI IRIX, Linux
Professional Services and Training, PROFESSITIONAL SERVICES AND TRAINING
ODE
Rigid Bodies with Arbitrary Mass Distribution.
Joint Types: ball-and-socket, hinge, slider (prismatic), Hinge-2, Fixed, Angular Motor, Universal.
Collision Primitives: Sphere, Box, Capped Cylinder, Plane, Ray, And Triangular Mesh.
Collision Spaces: Quad Tree, Hash Space, And Simple.
SIMULATION METID: The Equation of Motion Are Derived from a lagrange Multiplier Velocity Based Model Due To Trinkle / Stewart and Anitescu / Potra.
A First Order Integrator Is Being Used. It's Fast, But Not Accurate Enough for Quantitative Engineering YET. Higher ORDER INTEGRATORS WILL COME LATER.
Choice of Time Stepping Methods: Either The Standard `` Big Matrix '' Method or The Newer Item QUICKSTEP METHOD CAN Be..
Contact and friction model: This is based on the Dantzig LCP solver described by Baraff, although ODE implements a faster approximation to the Coloumb friction model.Has a native C interface (even though ODE is mostly written in C ).
HAS a C Interface Built on top of the c one.
Many Unit Tests, And More Being Written All The Time.
Platform Specific Optimizations.
Nevodex
Fully Configurable Nxjoint
'Roll your own Joint' with the new, fully configurable NxJoint! With this new flavor of NxJoint constraint you can selectively freeze, limit or free each of 6 DOF's independently, for unparalleled flexibility and ease of use. Virtually any type of joint can be Expressed by Setting Parameters of The Nxjoint - Completely Dynamical - Completely Dynamical, for Example, Set Up A Hinge Joint (1 DOF Free), THEN Convert It To A Ball-And-Socket (3 DOFS Free) To Simulate Damage.
Support for multi-threading
Take advantage of next-generation multiprocessing systems with the new multi-threaded API in the NovodeX SDK. NovodeX makes it easy to provide state-of-the-art physical behavior for gameplay and effects by harnessing the power of leading-edge parallel system architectures .
Improved High-Speed COLLISION DETECTION
The INDUSTRY's FASTEST AND MOST Comprehensive Collision System Is More Robust T11 Ever. Expect Reduced Tunneling Artifacts and Improved Performance With High-Speed Objects.
New raycast vehicles
The Novodex SDK Now Supports an advanced usteation of the single-rigid-body style.
Takamak
Tokamak Features a Unique ITERATIVE METHOD for SOLVING CONSTRAINT.
This allows development to make the trade-off getween account
And Speed, AS Well As Providing More Predictable Processor and
Memory, Tokamak's Constraint Solver Does Notes Involve Solving Large Matrices, There by Avoiding Memory
Bandwidth Limitation on Some Game Consoles.
Joints tokamak supports a variety of Joint Types and Joint Limits.
Fancy TokaMak Provides a Very Realistic Fancy Model And ITS Computational Cost IS
Minimal.
Stacking Tokamak Is Specially Optimized for Stacking Large Number of
Objects; One of the Most Frequently Requested Features by Game
Wepepers.
Collision Detection Build With Tokamak Is a Very Efficient Collision
Detection Module. Currently, Tokamak Provides COLLISION DETECTION
For primities (Box, Sphere, Capsule), Combination of Primitives, And
Arbitrary Static Triangle Mesh.
(New! Tokamak now support convelectr to convex caverision detection ..)
Rigid Particle a Lightweight Rigid Body Providing Particle Effects in Games at minimal cost.
Breakage Construction Model Which Will Break When Collision Occurs Is A Breeze in Tokamak. Fragment of
Original Model Will Automaticly Be Spawk By Tokamak's Built-in Breakage FunctionAlity.
Review
After watching the Demo and related documents provided by each engine, I think it should be selected between Nevodex and ODE.
Hovok is the most famous one in many engines, but it is the least available. From his support, such as Half-Life and Medal Of Honor, you can see the strength of this engine.
Vortex is an industrial-oriented physics engine, and the direction he pursues is precise and not speed. Collect all kinds of factors, I think this physics engine is not available.
ODE is a physical engine based on Open Dynamics Framework. He is open, allowing developers to spy the implementation of the implementation, even improved. A game engine called Gryps (http://engine.hlw.co.at) has integrated ODE. The supplier of this engine can use the use of this ODE, integrated with technical support, but relatively other business engines, support Still it is insufficient. Many developers have developed a lot of Demo using this engine, including some of the auto-class Demo, has basically met our needs.
Nevodex is a commercial physics engine. From his Demo, the simulation is really running speed, and it is more detailed with ODE, and the document is more detailed. This engine is developed by Ageia, which is more convenient for future PPUs.
Takamak is developed by a fan, so the technical strength is thinner, and it should not be considered for technical support. Note
The engine DEMO and documentation mentioned above can be downloaded through my POPO shared folder.
POPO: Blue_Bean@163.com