簡介
而且它有內建的碰撞檢測系統。本人的主要工作是研究 ODE物理引擎在3D遊戲中的套用。研究主要是通過學習ODE的用戶手冊、閱讀和理解ODE的代碼然後掌握ODE的編程接口從而使用ODE剛體遊戲引擎編 寫3D遊戲場景來體現ODE的套用。3D遊戲場景的編寫主要使用了3D圖形API-OpenGL 和ODE引擎等遊戲仿真技術。
特點
總共實現了以下基本的剛體物理運動遊戲場景:
(1)單擺運動:主要體現了球連線的具體使用。
(2)撞球:主要體現了碰撞的處理。
(3)汽車:主要體現了Hinge-2連線的使用。
(4)拋物線運動:主要體現了剛體方向和速度具體處理方法。
功能
支持功能如下:
· Rigid bodies with arbitrary mass distribution.
· Joint types: ball-and-socket, hinge, slider (prismatic), hinge-2, fixed, angular motor, linear motor, universal.
· Collision primitives: sphere, box, cylinder, capsule, plane, ray, and triangular mesh, convex.
· Collision spaces: Quad tree, hash space, and simple.
· Simulation method: The equations 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 iterative QuickStep method can be used.
· 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.
· Other stuff I forgot to mention...