1. Havok:
老牌的君王,支持功能如下:
· Collision Detection - including Continuous Physics™
· MOPP™ Technology - for compact representation of large collision meshes
· Dynamics and Constraint Solving
· Vehicle Dynamics
· Data Serialization and Art Tool Support
· Visual Debugger for in-game diagnostic feedback
有不少游戏和软件都选择了他做物理引擎,比如HOLO3,失落星球,HL2, 细胞分裂,指环王Online ..etc现在Havok被Intel收购了,Intel使出了扩展Havok物理引擎市场的杀手锏——免费!Havok在网站上开始提供其物理和动画引擎产品的全免费下载。内容包括Havok SDK库、样例、技术文档以及支持Maya、3ds Max和Avid XSI等3D建模软件的格式转换工具。所有的一切只要简单注册一下姓名邮箱就可以免费下载。
下载地址
http://tryhavok.intel.com/
2. NovodeX --- AGEIA PhysX
新兴的王者,支持功能如下:
· Massively Parallel Physics Architecture
· High-speed GDDR3 Memory Interface
· AGEIA Universal Continuous Collision Detection
· AGEIA Physical Smart Particle Technology
· AGEIA Complex Object Physics System
· AGEIA Scalable Terrain Fidelity
· AGEIA Dynamic Gaming Framework
因为特有的硬件卡(物理加速卡-PPU)支持,所以能处理大量的物理运算,其他几款暂时没得比。Unreal3,GameBryo, Reality Engine等多款商业引擎和游戏都使用了他。
(Tip: NovodeX2.2及以前的版本,可以在没有硬件卡的情况下使用所有功能,晚上能下载到)
NovodeX是虚幻引擎3中功能强大的新一代物理引擎,其性能决不输给Havok Physics。NovodeX支持速度、加速度和弹性碰撞等物理概念,并且含有布娃娃系统令人物动作更加逼真。
复杂而强大的声音仿真效果是NovodeX物理引擎的另一亮点,它不仅能够模拟出音调随着发音物体的速度而变化的多普勒效应(最明显的例子是运动着的火车汽笛声调会变的现象),甚至连同一物体中材质不同的位置也能够发出不同的声音。
要使用NovodeX,我们首先需要在自己的项目中
包含 NxPhysics.h 这个头文件
然后在项目或者IDE中(以下都以VC为例),加入两个link libs
NxPhysics.lib NxFoundation.lib
以上三个文件都可以在下载的sdk中找到
下面我们正式开始使用NovodeX
第一步,让我们来创建一个nx所支持的物理世界
先来定义两个变量
NxPhysicsSDK PhysicsSDK;
NxScene* Scene;
PhysicsSDK = NxCreatePhysicsSDK(NX_PHYSICS_SDK_VERSION, 0, 0);
创建PhysicsSDK
PhysicsSDK->setParameter(NX_MIN_SEPARATION_FOR_PENALTY, -0.0001f);