最近在为公司项目寻找一个合适的开源3D引擎,一开始想到的就是OGRE,irrlicht这些。由于公司里没用人接触过3D引擎,甚至连熟悉C/C++的人也只有一个。此外,基于团队现状,像OGRE之类的纯粹的图形引擎肯定是不考虑了,此外最好还能快速上手的。我发现目前3D引擎普遍的一个问题就是上手都不容易,搭建个开发环境都要折腾好久。突然想到大学里接触过的Panda3D,下了最新版的SDK,初步感觉比较好。
简介 : Panda3D 是一个强大的可用 于 SGI, Linux, Sun 和 Windows 的 渲染引擎。核心渲染模块等基于 C++ 开发。 Panda3D 提 供了 Python 的脚本化实用接口。 Panda3D 可 以使用也可以不使用 Python。(对于我这样的非C/C++程序员来说,我更偏向于Python)。
项目地址: www.panda3d .org
上手度:说实话,Panda3D是我用过的最容易上手的3D引擎,在win平台下载安装包,安装,编码(python),运行,一切都很顺利。安装包已经带了python库,无需额外下载。就喜欢这种All in one的方式,起码在初次使用的时候用户不会有挫折感。
文档方面:就一个开源项目而言,Panda3D的文档还算是详细的,目前比较遗憾的是文档只能在线阅读,不提供下载。此外一些章节文档还未完成。但对于常规应用,文档已经够了。
动画模型支持:Panda3D采用egg文件格式(应该是采用Python的原因,所以取名叫egg),对于常规的3D建模软件像Maya,3DMax等都有相应的导出插件。而且插件支持版本也非常全,从3dmax6到最新的3dmax2010都有相应的导出插件,所以不存在为了导出而使用特定版本的建模软件的问题。动画是支持骨骼动画跟轨迹运动,模型跟动画文件可以分多个文件(推荐方式),也可以在同一个文件里面。本人从网上下载了一套人物模型,按照文档导出egg文件,并在程序里面使用一切非常顺利。
物理引擎:Panda3D本身支持各种常规的碰撞侦测,同时集成了ODE物理引擎,可以应付大部分要求。
示例代码:Panda3D安装完成后已经带了很多的示例代码。通过这些示例,可以快速掌握基础的东西,对理解Panda3D也很有帮助。