Easy to use cross-platform 3D engines
C++
http://gamedev.stackexchange.com/questions/21/easy-to-use-cross-platform-3d-engines-for-c-game-development
My Opinion (only for open source 3D engines):
- Irrlicht:
- Light 3D engine
- Clean C++ without dependencies and no STL.
- Not very well documented but there are good tutorials.
- Very small so you can customize it easily.
- No OpenGL 3.X driver, Direct X 10.X or 11.X available in the official SDK.
- Very good for mobile development;
- Good community
- Few extensions available
- Ogre3D:
- Big 3D engine
- It uses modern C++ such as STL, exceptions and RTTI
- Good documentation (There are published books).
- Many renderers (OpenGL, DirectX and OpenGL ES...).
- Ogre3D have many extensions as CEGUI or Bullet integration, Tree nodes...
- But more difficult to extend Ogre3D if you want something specifics.
- Big community
- Many extensions
- Crystal space: An old design and difficult to use. After few days, I stopped using this engine.
- Horde3D
- Small engine
- Modern design
- Light community
- No extensions
- Blendelf
- Small engine with some dependencies
- Modern design with moderns effects as DOF or HDR ...
- OpenGL only
- Light community
- Bullet integration for physics
- You use lua to pilot this engine3D
TL;DR:
- For a desktop game (or future commercial game): Ogre3D
- For a first game: Irrlicht
- For mobile development: irrlicht (Ogre3D is too big)
- For sexy effects: Blendelf
Open Scene Graph is a pretty good, very well designed cross-platform 3D engine. Contrary to Ogre3D, for example, it does not provide "game engine" features, and concentrates on being a very nice abstraction on top of OpenGL.
- It is quite lightweight, and does not force a framework on you: you can use as little or as much of it as you want, and use it through SDL, SFML, wxWidgets, QT...
- It is a great learning experience: as you learn the library, you understand more and more about the underlying OpenGL and the way it has been designed
- Pretty much ready to use: it has loaders for mainstream 3D formats
- Shaders friendly
Have a look at the extensive list of samples.
Easy to use cross-platform 3D engines的更多相关文章
- “CMake”这个名字是“cross platform make”
cmake_百度百科 https://baike.baidu.com/item/cmake/7138032?fr=aladdin CMake 可以编译源代码.制作程序库.产生适配器(wrapper). ...
- Comparing Xamarin and Delphi XE5 to Xcode for Cross Platform Mobile App Development
Comparing Xamarin and Delphi XE5 to Xcode for Cross Platform Mobile App Development If you are consi ...
- Using 3D engines with Qt(可以整合到Qt里,不影响)
A number of popular 3D engines can be integrated with Qt: Contents [hide] 1 Ogre 2 Irrlicht 3 OpenS ...
- V4 Reduce Transportable Tablespace Downtime using Cross Platform Incremental Backup (Doc ID 2471245.1)
V4 Reduce Transportable Tablespace Downtime using Cross Platform Incremental Backup (Doc ID 2471245. ...
- Gtest:Using visual studio 2017 cross platform feature to compile code remotely
参考:使用Visual Studio 2017作为Linux C++开发工具 前言 最近在学Gtest单元测试框架,由于平时都是使用Source Insight写代码,遇到问题自己还是要到Linux下 ...
- Cross Platform Note: STD C++ Preprocessor directives & pre-defined macros
ref: http://www.cplusplus.com/doc/tutorial/preprocessor/ concolusion: directives: #define #undef #in ...
- Cross platform
值得学习的C/C++语言开源项目 (1)ACE 庞大.复杂,适合大型项目.开源.免费,不依赖第三方库,支持跨平台. http://www.cs.wustl.edu/~schmidt/ACE.html ...
- Cross platform GUI for creating SSL certs with OpenSSL
Someone said: from : https://micksmix.wordpress.com/2012/08/09/xca-cross-platform-gui-for-creating-s ...
- FireMonkey vs. VCL (FMX的UI更灵活,图形效果更强,硬件加速,内嵌3D,使用浮点数更精确,跨平台,可使用Mida converter转换和TFireMonkeyContainer内嵌)
Frequently when I am talking about the VCL or FireMonkey I get some of these common questions: Is VC ...
随机推荐
- L312 难看懂的
There are few sadder sights than 8 pile of fan letters ,lovingly decorated with hand drawings,suffer ...
- L255
If a farmer wishes to succeed, he must try to keep a wide gap between his consumption and his produc ...
- day 20 collection模块 time 模块 os 模块
一.collection模块 1.namedtuple: 生成可以使用名字来访问元素内容的tuple 2.deque: 双端队列,可以快速的从另外一侧追加和推出对象 3.Counter: 计数器,主要 ...
- SSM整合框架实现ajax校验
SSM整合框架实现ajax校验 刚学习了ssm框架,ajax校验成功,分享下 1.导入jar包
- HSTS 与 307 状态码
最近线上产品突然在 Chrome 浏览器上出现 307 状态码,并跳转到 https 版.由于 https 尚未部署完毕,导致了相当严重的后果. 但是 307 代码是什么含义呢?页面又为何会出现 30 ...
- mac下python安装MySQLdb模块
参考:http://blog.csdn.net/yelyyely/article/details/41114449 1.调整到anaconda下的python 2.安装有关程序 brew instal ...
- C++数组初始化
局部数组:没有默认值,如果声明的时候不定义,则会出现随机数(undefined): 全局数组:声明时不赋值,默认值为0
- 20155219 2016-2017-2 《Java程序设计》第5周学习总结
20155219 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 异常处理 语法与继承构架 异常就是程序在运行时出现的不正常情况.java中的错误以对象的方式 ...
- C语言--第八周作业评分(5班)
作业链接:https://edu.cnblogs.com/campus/hljkj/CS2017-5/homework/1400 一.评分要求 要求1 完成14.15周的所有PTA中题目集,总共4次题 ...
- MAC安装python jupyter notebook
介绍: Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言. Jupyter Notebook 的本质是一个 Web 应用 ...