返回> 网站首页 

介绍三个物理引擎

yoours2011-03-04 14:12:12 阅读 1183

简介一边听听音乐,一边写写文章。

物理引擎在3D的领域中是较年轻的,而且难度也比较高,先製作这篇文章,是想让大家有个先行印象,了解这是什么。

        別担心,最终这些教学终將连结成为一体,我只是让大家的概念先推前一下。当成看杂誌一般的心情即可,如果你有研究,会使用SDK,也可以马上开始。

关於物理
       牛顿归纳出了地心引力的通则,並且开始以数学方法描述物理现象,这已经是很久前的事情了,但是並不只是东西往下掉而已,虽然简单讲是这样。球会滚动、羽毛会飘落、摩擦力......等等,都是自然界常见的力学现象。

关於游戏的物理
       在2D游戏里,大部分的物理被简化为"离开地面的时候,就往下掉",这样简单易懂,马里奥、洛克人都是这样,所以我们习以为常,甚至大多数的游戏都不考虑物理的。(比较明显的例子是,1942里的飞机是不可能"空中倒退"的,但实际上没人觉得奇怪)。

       事实上有个东西叫做力矩,你拋出一个纸团,他不只受地心引力往下拉,还会旋转,可是要在游戏里实现这样的功能,只能说是"奢侈、浪费运算",或是"令人不习惯"。

       现在的3D游戏已经大抵脱离简单的多边形,在建模上栩栩如生,尤其是FPS,更是讲求真实,这样的演化路线终於演进到了玩家与环境的关係上。

       你用枪打玻璃,玻璃会破碎,打坏一叠箱子底下的一个,整个会塌下来,说实话,一般人不太可能在现实做这些事情(但是生活中还是有物理),游戏中要求真实性,那么就需要做出一套运算库,让游戏中实现接近真实的物理。

       好吧,3D很难,复杂的数学更难,所以要栩栩如生的表现出来,几乎不可能,这变成了一种商业机密、或者是纯学术研究的討论,一直到近几年,才比较平民化,因为3D创作工具也普及了,结合这些东西,你也可以在自己的游戏中实现物理。

普及的物理引擎
       这里列出三个常常被使用的物理引擎,不代表全部,但掌握其中一个都很有帮助。

Open Dynamics Engine http://www.ode.org/
       免费、开源、授权合理,所以基本上很多游戏引擎都有绑定ODE作为物理引擎,
       但是其缺点之一就是在多物件时,相较其他物理引擎,会比较慢,但是,
       部分修改过的商业版本情况好一点,但却不是开源的了。

Newton Game Dynamics http://www.newtondynamics.com/
       这个物理引擎是跨Win32/Mac/Linux三个平台的,同时也有3DGameStudio插件,
       在速度和功能上很不错,你也可以找到大量范例,虽然没有开源,但广为使用,
       有兴趣的人,从这个开始是不错的选择,他也是OGRE游戏引擎的组件之一。

Tokamak Game Physics http://www.tokamakphysics.com/
       Tokamak是一个速度极快的物理引擎,基本上他只能被使用於Windows平台,
       但是速度上的优势让他佔有一席之地,当然这引擎也是免费提供的,
       Tokamak有被应用为Blitz3D的插件,所以您若是Blitz3D用户,可能见过其身影。
微信小程序扫码登陆

文章评论

1183人参与,0条评论