常見的3D引擎有:Unreal,Quake,Lithtech,OGRE,Nebula,Irrlicht,Truevision3D...等,其中開源免費的有:orge,irrlicht,fly3d, NeoEngine, revolution3d, Nebula2,Genesis3d等。OGRE 在免費、開源的引擎中評價最高,一個原因是作為一個圖形渲染引擎,它支持的圖形特性最多,所以渲染質量也不錯;另一個原因是設計模式的清晰;另外,速度也不錯。OGRE 將專注于向一個純粹的、然而富于協作和擴展性的圖形引擎發展,這得益于它的龐大的社群支持,使得很多事情可以通過外掛一些更專業的引擎來實現,物理引擎使用 ODE 、 Tokamak 、 NovodeX ,網絡引擎使用 openTNL 、 RakNet 、 eNet ,聲音引擎使用 FMod 、 OpenAL ,以及界面引擎使用 CEGUI 。
Standard |
OGRE |
IrrLicht |
Truevision3D |
General |
|||
Type |
Only rendering engine |
|
Game engine Include TV3DEngine,TV3DMedia,TV3DNet…… |
Languages |
Written in pure C++, totally object orientated. |
Written in pure C++, totally object orientated. |
Written in C++ and VB6 with DirectX8.1 |
License |
LGPL |
zlib/libpng License(totally free) |
· Free TV3DSDK · Registered Developer License · group or site licenses |
Develop platforms |
· C++ · .NET |
· C++ · .NET language binding |
VB/VC++/DELPHI/ C#/vb.net |
Platforms |
|||
Windows |
ü Support |
ü Support |
ü Support |
Linux
|
ü Support |
ü Support |
|
MacOS |
ü Support |
ü Support |
|
3D API |
|||
Direct3D |
ü Support |
ü Support |
ü Support |
OpenGL |
ü Support |
ü Support |
|
Other |
|
· The Irrlicht Engine software renderer. · The Apfelbaum Software Renderer |
|
Architecture |
|||
Extensibility |
· Extensible example framework · Flexible plugin architecture allows engine to be extended without recompilation · Use some other professional engines to achieve other features |
|
|
Scripting |
|
|
|
Materials & Textures |
|||
Materials |
· Powerful material declaration language · Multiple material · Material LOD · Multi-texture and multi-pass blending · Projective texturing · Textures can be provided and updated in real-time by plugins |
· Provide common built in materials based on fixed function pipeline or programmable pipeline · add new materials to Irrlicht at runtime, without the need of modifying/recompiling the engine |
|
Textures and Mapping |
自動產生MipMap;
自動調整紋理大小以滿足硬件需求。
支持可程序控制的紋理坐標生成和轉換。 |
· Bump mapping · Parallax mapping · Light maps · Sphere mapping |
DOT3 Bump mapping
沒有提供多層紋理和混合模式 |
Shaders |
· Supports vertex and fragment programs, both written in assembler, and in Cg, DirectX9 HLSL, or GLSL · Support many commonly bound constant parameters like worldview matrices, light state information, object space eye position etc |
· Pixel and Vertex Shaders 1.1 to 3.0 · ARB Fragment and Vertex Programs · HLSL · GLSL |
· Hardware Vertex Shaders · HLSL |
Scene Management |
|||
General |
· Highly customizable, flexible scene management, not tied to any single scene type. · Hierarchical scene graph; nodes allow objects to be attached to each other and follow each others movements, articulated structures etc · Scene querying |
· Using a hierarchical scene graph, can mix indoor and outdoor scene seamless together · Extensible hierarchical scene management
|
|
BSP Support |
BSP 場景的天空穹、粒子特效、高級材質屬性,乃至 BSP 的空間分割規則都會被正確識別、自動實現 |
· 對 BSP 的特性支持比較貧乏 |
對 BSP 的讀取存在 BUG |
Other |
|
|
|
Special effects |
|||
Particle System
|
· easily extensible emitters, affectors and renderers · can be defined in text scripts for adjusting in real-time · particle pooling |
· Customizeable Particle systems for snow, smoke, fire, ... |
Atmospheric effects like fog, cloud, sky (box and sphere), stars. |
Light & Shadow
|
當前支持三種陰影:調整紋理陰影,調整模版陰影,附加模板陰影。不支持軟陰影 Multiple shadow rendering techniques, |
· Dynamic lights · Dynamic shadows using the stencil buffer |
· Optimized dynamic stencil shadows · DirectX Hardware Lighting |
Other |
· Support for skyboxes, skyplanes and skydomes · Billboarding for sprite graphics · Transparent objects automatically managed
|
· Realistic water surfaces · Billboards · Transparent objects · Skyboxes · Fog · Texture animation |
Billboard |
Character Animation |
|||
|
· Skeletal animation · blending of multiple animations · variable bone weight skinning · hardware-accelerated skinning
|
· Morph target animation: · Skeletal animation |
· Skeleton based, Key frame based, morph based animations · Animations that can be enhanced by bone attaching or custom bone rotations. |
Supported Formats |
|||
textures file formats |
· PNG, JPEG, TGA, BMP or DDS · 1D textures, volumetric textures, cubemaps and compressed textures (DXT/S3TC) |
· PSD,JPG,PNG,TGA,BMP,PCX |
|
mesh file formats |
Milkshape3D, 3D Studio Max, Maya, Blender and Wings3D |
· 3DS,OBJ,CSM,DAE,DMF,OCT,X,MS3D,MY3D,LMTS,BSP,MD2 |
3DS, X, MDL, MD2, MD3 |
Document |
|||
|
Great number of users and well documented. |
well documented API with lots of examples and tutorials. |
|
Other |
|||
GUI |
|
|
|
2D Drawing |
|
|
|
XML |
ü Support XML Converter: convert efficient runtime binary formats to/from XML for interchange or editing |
ü Support 快速的XML分析器 |
|
Web Site |
|||
|
http://www.ogre3d.org |
http://irrlicht.sourceforge.net |
http://www.truevision3d.com |
來自:http://www.cnblogs.com/cyberchen-net