转:典型开源3D引擎分类比较
常见的3D引擎有:Unreal、Quake、Lithtech、OGRE、Nebula、Irrlicht、Truevision3D...
其中开源免费的有:OGRE、irrlicht、fly3d、NeoEngine、revolution3d、 Nebula2、Genesis3d等。
OGRE 在免费、开源的引擎中评价最高,一个原因是作为一个图形渲染引擎,它支持的图形特性最多,所以渲染质量也不错;另一个原因是设计模式的清晰;另外,速度也不错。
OGRE 将专注于向一个纯粹的、然而富于协作和扩展性的图形引擎发展,这得益于它的庞大的社群支持,使得很多事情可以通过外挂一些更专业的引擎来实现,物理引擎使用 ODE 、 Tokamak 、 NovodeX ,网络引擎使用 openTNL 、 RakNet 、 eNet ,声音引擎使用 FMod 、 OpenAL ,以及界面引擎使用 CEGUI 。
|
Standard |
||||
|
General |
||||
|
Type |
Only rendering engine |
|
Game engine IncludeTV3DEngine,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 |
||||
转:典型开源3D引擎分类比较的更多相关文章
- 支持Android 的几款开源3D引擎调研
最近由于工作需要,对支持Android的一些开源3D引擎做了调研,结果如下: 1.Ogre 十分强大的一款3D引擎,号称工业级标准的开源项目,不仅可以用于游戏,还可以用于其他和3D相关的软件.大多数该 ...
- 转:开源3D引擎介绍
Delta3D:Delta3D是一个功能齐全的游戏引擎,可用于游戏,模拟或其他图形应用.其模块化设计集成了其他的开源项目,如‘开放场景图’,‘开放动力学引擎’,‘人物动画库’和‘OpenAL’ .De ...
- 从0开发3D引擎(七):学习Reason语言
目录 上一篇博文 介绍Reason Reason的优势 如何学习Reason? 介绍Reason的部分知识点 大家好,本文介绍Reason语言以及学习Reason的方法. 上一篇博文 从0开发3D引擎 ...
- 开源3D游戏引擎Irrlicht简介
Irrlicht简介 Irrlicht在国内也被叫做"鬼火"引擎,是一款用C++编写的开放源代码的高性能游戏引擎.而且是跨平台的,具有很好的移植性,Irrlicht支持OpenGl ...
- 《Genesis-3D开源游戏引擎完整实例教程-2D射击游戏篇:简介及目录》(附上完整工程文件)
G-3D引擎2D射击类游戏制作教程 游戏类型: 打飞机游戏属于射击类游戏中的一种,可以划分为卷轴射击类游戏. 视觉表现类型为:2D 框架简介: Genesis-3D引擎不仅为开发者提供一个3D游戏制作 ...
- 《Genesis-3D开源游戏引擎-FQA常见问题解答》2014年01月10号版本
1.Genesis-3D开源游戏引擎主要面向哪些用户人群?有限制吗? 1.我们的引擎没有限制,只要您想了解和使用我们的引擎,就可以加入Genesis-3D的大家庭.2.我们的主要用户群是各个相关的企业 ...
- Genesis-3D开源游戏引擎简介!
Genesis-3D由搜狐畅游公司超百人引擎研发团队历时数年耗费巨资自主研发,是国内外首款商业开源的3D游戏引擎平台.它包括跨平台渲染引擎.2D引擎.物理引擎.音效系统.粒子系统.动画系统.服务器引擎 ...
- 《Genesis-3D开源游戏引擎完整实例教程-2D射击游戏篇01:播放序列动画》
1.播放序列动画 系列动画播放概述 2D游戏中的动画系统,不同于3D游戏.3D游戏中,角色美术资源不仅包含角色模型的,还包括角色的贴图和动作等,模型本身自带角色的动作动画效果.2D游戏中,角色美术资源 ...
- 《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇01:道路的自动生成》
1.道路的自动生成 道路自动生成概述: 3D跑酷游戏的核心就是跑,在跑这一过程中增加趣味性使得游戏具有更多的可玩性.道路的自动生成和自由拼接,为游戏增设了更多的不可预见性.这种不可预见性使得玩家在游戏 ...
随机推荐
- 整理:产品文档规范——BRD、PRD和MRD
BRD和MRD,PRD一起被认为是从市场到产品需要建立的文档规范. BRD 商业需求文档--BRD(Business Requirements Document) 商业需求文档重点放在定义产品的商业需 ...
- require.js 最佳实践【转】
https://www.cnblogs.com/digdeep/p/4607131.html require.js是一个js库,相关的基础知识,前面转载了两篇博文:Javascript模块化编程(re ...
- C/C++二叉树搜索树操作集
啥是二叉查找树 在数据结构中,有一个奇葩的东西,说它奇葩,那是因为它重要,这就是树.而在树中,二叉树又是当中的贵族.二叉树的一个重要应用是它们在查找中的应用,于是就有了二叉查找树. 使二叉树成为一颗二 ...
- Windows server 2012 R2 与 Windows 2016 的双系统重启选项
一台主机上,同时安装了Windows 2012R2还有Windows 2016, 但是如何能在任意一个系统重启到另一个呢? 下图中,在Win2012R2中,无法选择重启到2016中. 解决方案 === ...
- iOS开发-UIButton浅谈
UIButton算是最基本的一个控件了,不过有的时候用法挺多关于UIButton文字的位置,字体大小,字体的颜色 1.设置UIButton字体大小,尤其注意不要使用直接调用setFont: [self ...
- 字符串 CSV解析 表格 逗号分隔值 通讯录 电话簿 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- python 机器学习多项式回归
现实世界的曲线关系都是通过增加多项式实现的,现在解决多项式回归问题 住房价格样本 样本图像 import matplotlib.font_manager as fm import matplotlib ...
- Android -- 获取视频第一帧缩略图
干货 从API 8开始,新增了一个类: android.media.ThumbnailUtils这个类提供了3个静态方法一个用来获取视频第一帧得到的Bitmap,2个对图片进行缩略处理. public ...
- 浅谈 Adaboost 算法
http://blog.csdn.net/haidao2009/article/details/7514787 菜鸟最近开始学习machine learning.发现adaboost 挺有趣,就把自己 ...
- Eclipse CDT 插件列表
http://www.bestplugins.com/software/eclipse-c-plugin.html