3D引擎--可移植到Android的开源的引擎
来源:互联网 发布:我国经济发展数据 编辑:程序博客网 时间:2024/05/17 02:22
开源:便于更改代码,优化性能,且免费。(商业引擎更出色,花钱不是?)
支持OpenGL:DirectX只能用于windows平台
可移植到Android:一定要支持Android平台
效率相对较高:移动设备的局限性,如电量,CPU,GPU等
Horde3D
OGRE3D
Irrlicht
jmonkey
Catcake
jPCT-AE
min3d
gamine
Alien3D
1、OGRE
name
OGRE
Supported Graphic lib
OpenGL 、Direct3D
Develop Language
C++,builds on gcc 3+ on Linux
description
一个强大的实时图形引擎。目前全球评价最好使用最广的免费开源引擎,可媲美商业引擎。
merit
支持多种纹理图片格式,包括:PNG,TGA,DDS,TIF,GIF,JPG;支持骨骼动画,内置强大的材质管理和脚本系统,可以不动一行代码去进行材质维护,并且有可视化的编辑工具。文档完善。
defect
入门相对较难,渲染效率低。只专注于图形,不包含声音、网络等模块,但留有接口,如有需要,可以添加第三方外挂库,如物理库、音频库等结合开发。
2、Irrlicht
name
Irrlicht
Supported Graphic lib
OpenGL 、Direct3D
Develop Language
C++
description
著名的“鬼火”引擎
merit
上手很快,易用性强,运行速度快,提供了可以在商业级的3D引擎上具有的动态的阴影,粒子系统,角色动画,室内和室外技术以及碰撞检测。现在网络上有很多Irrlicht的增强程序,可以拿来使用。
defect
对BSP支持较为贫乏
3、jmonkey
name
jmonkey
Supported Graphic lib
OpenGL 、Direct3D
Develop Language
Java
description
JMonkey 3D 是一款用于java 3D引擎
merit
封装了OpenGL,提供全性能的工具包,主要有图片解码器、文件解码器、GUI系统、粒子系统、物理系统、光照系统等,功能很齐全。
defect
JME对于OPENGL封装得太好, 以至根本找不到GL的痕迹, 很多底层优化无法修改。目前只支持opengl es 2.0
4、Catcake
name
Catcake
Supported Graphic lib
OpenGL
Develop Language
C++,java
description
Catcake是一款跨平台的Java 3D图形引擎,也有C++版本
merit
有专门的android版本,易用性和运行性能上有出色的表现。 支持音频处理和视频播放。
defect
文档不足
5、jPCT-AE
name
jPCT-AE
Supported Graphic lib
OpenGL
Develop Language
Java
description
jPCT-AE是jPCT在Android平台上的移植版本,以java语言为基础
merit
体积小,专门的Android移植版本,有着惊人的向下兼容性,可以运行在JVM1.1环境之中,因为jPCT内部提供的图形渲染 接口完 全符合所有的Java 1.1规范。
defect
Java编写,效率有待考量
6、Horde3Dname
Horde3D
Supported Graphic lib
OpenGL
Develop Language
C++
description
Horde3D is a small open source 3D rendering engine
merit
简单易懂,自带了场景编辑器,集成了简单的模型编辑,粒子编辑,动作编辑等功能
defect
效率不是很高
7、min3D
name
min3D
Supported Graphic lib
OpenGL
Develop Language
Java
description
lightweight 3d library/framework for Android using Java with OpenGL ES targeting compatibility with Android v1.5/OpenGL ES 1.0 and higher.
merit
专门的android 3d UI引擎,非常小巧,只有几百K。基于opengl es 1.x, 封装了opengl 的一些基本的绘图操作以及绘图管理和渲染操作。提供了一个活动类RenderActivity,上手容易。
defect
功能相对简单。
8、gamine
name
gamine
Supported Graphic lib
OpenGL
Develop Language
Java
description
一款小型的java 3D引擎
merit
专门为Android开发的引擎,体积小,调研容易
defect
效率稍低
9、Alien 3D
name
Alien 3D
Supported Graphic lib
OpenGL
Develop Language
Java
description
java编写的OpenGL ES接口的3D游戏引擎
merit
3DS装载、2D 粒子、原型插件,tiled地图、精灵动画
defect
研究资料太少
上述列举了引擎的介绍,优缺点等,大家可以根据自己的需要和侧重点选择,其中,OGRE和Irrlicht是比较成熟的产品,是开源的3D引擎中使用比较多的,网上有较多的文档和使用经验。 另外引擎的选择,重要的两点:1、效率,算法是否足够优秀;2、效果是否足够好,能不能达到你想要的绚丽效果,锯齿是否严重,运行时是否清新等。
下面着重列举两个引擎做对比。
OGRE
Irrlicht
开发语言
C++
C++
易用性
门槛较高
易懂,入门低
效率
opgl渲染较慢
较高
美观
渲染的效果很好,清晰,
视觉效果好
运动较流畅,视觉效果还可以
资料
很多,被广泛研究和移植,
有很多项目和经验可以借鉴
全面,很多成功开源的项目及经验
移植性
需要参考资料移植
专门的Android版,移植简单
使用率
很成熟,免费3D图形引擎
中评价最高,使用率广
成熟的引擎,使用率较广
纹理格式和场景格式
欢迎大家借鉴和补充。在这要提醒各位,要注意这些3D引擎的开放协议,以免带来不便。
附:各引擎的source地址:
- 3D引擎--可移植到Android的开源的引擎及调查报告
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 3D引擎--可移植到Android的开源的引擎
- 可移植、可扩展多人3D游戏引擎的设计与构架
- 可移植性最好的SNMP引擎
- 我的3D引擎
- Android 3D引擎
- android 中的 openGL引擎的移植
- POJ 2352 Stars
- sqlite用命令来创建db数据库文件(初)
- android:screenOrientation="portrait"
- PCoIP vs ICA协议对比
- 互联网协议
- 3D引擎--可移植到Android的开源的引擎
- 双缓冲区绘图操作的实现
- opencv中如何利用mat来获取连续内存的图像区域,并改变形状
- web开发各种乱码问题处理全集 保证解决99%的乱码错误(包括mysql的乱码解决,使用struts2框架的乱码问题)
- 《大唐豪侠》架构开发纪实
- 短信中心号码的读取
- Cocos2d-x12和NDK-r8编译android
- 模拟串口的实现--单片机IO口
- 屏幕的双向缓冲