Mika Heinonen's Blog
Counter
2557

3D Engines Comparison
Saturday, 18 July 2009 16:34:33 EET

Rank
Name
OpenGL Support
Basic Dynamic Shadows
Full Dynamic Shadows
256+ Dynamic Lights
Realtime GI
OGG Sounds
C/C++ Support
Realtime Scripting
Source Code Included
Entity Based System
Low End Support
High End Support
Physics
OpenGL Commands
Realtime Editor
Cross-Platform
Networking
Price under $1000
Total
Score
Importance
15
10
16
14
12
1
13
3
2
4
7
11
17
5
6
8
0
9
1Leadwerks Engine
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
No
Yes
200
14
2Max3D
Yes
Yes
Yes
Yes
No
Yes
Yes
No
Yes
Yes
No
Yes
Yes
Yes
No
Yes
No
0
13
3CryENGINE 3
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
Yes
No
Yes
No
12
4Unity Pro
Yes
Yes
No
No
No
Yes
No
Yes
No
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
1499
11
5Xors3D
No
Yes
Yes
Yes
No
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
No
No
No
No
100
11
6Chrome 4
No
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
Yes
No
Yes
No
11
7Torque
Yes
Yes
No
No
No
Yes
Yes
Yes
Yes
No
No
Yes
No
No
Yes
Yes
Yes
1000
11
8Esenthel
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
No
No
No
Yes
Yes
No
Yes
No
Yes
7000
11
9Ogre3D
Yes
Yes
No
No
No
Yes
Yes
No
Yes
No
Yes
Yes
No
No
Yes
Yes
No
0
10
10Irrlicht
Yes
Yes
No
No
No
Yes
Yes
No
Yes
No
Yes
Yes
No
No
No
Yes
Yes
0
10
11Flow3D
Yes
Yes
No
No
No
Yes
No
No
No
Yes
Yes
Yes
Yes
No
Yes
No
No
50
9
12C4 Std
Yes
Yes
No
No
No
No
Yes
No
Yes
No
No
Yes
No
No
Yes
Yes
Yes
350
9
133D Game Studio A7
No
Yes
No
No
No
Yes
Yes
Yes
No
No
No
Yes
Yes
No
Yes
No
Yes
199/899
9
14MiniB3D
Yes
No
No
No
No
Yes
No
No
Yes
Yes
Yes
No
No
Yes
No
Yes
Yes
80
9
15Ninfa3D
Yes
Yes
No
No
No
Yes
No
No
Yes
No
Yes
Yes
Yes
No
No
No
No
0
8
16Truevision3D
No
Yes
Yes
Yes
No
No
Yes
No
No
Yes
No
Yes
Yes
No
No
No
No
150
8
17Nuclear Fusion
No
No
No
No
No
Yes
Yes
No
Yes
Yes
Yes
No
No
No
No
No
Yes
59
7
18Blitz3D SDK
No
No
No
No
No
Yes
Yes
No
No
Yes
Yes
No
No
No
No
No
Yes
100
6
19Blitz3D
No
No
No
No
No
Yes
No
No
No
Yes
Yes
No
No
No
No
No
Yes
100
5

More rows and columns still coming... You can suggest what other engines you want on the list, but please provide the column infos, as I own/know only these engines. I'm more interested in higher rank engines though, as there are tons of lower ranks engines on the market, but I will still add low rank engines too, if I got all info for them.

Explanation of the columns and their relevance:

OpenGL Support: This feature is important for people who want to make cross-platform 3D development.

Basic Dynamic Shadows: Basic or incompletely implemented Dynamic Shadows. Some engines don't have point light shadows, some have only stencil shadows.

Full Dynamic Shadows: This means that all lights cast realtime shadows on all 3D objects, including self-shadowing, which means that a 3D object casts also shadows on it's own surfaces, and not only on other surrounding 3D objects. Also PoM shadows (=shadows from 3D textures) are needed to qualify as a Full Dynamic Shadows engine.

256+ Dynamic Lights: This is only possibe with deferred rendering capable engines. The alternative to deferred rendering is forward rendering, which allows only around 128 dynamic lights (using a 128 buffers hack) due to color overburn and too low performance if you go above that. However, in most cases only 4 or 8 dynamic lights are used in forward rendering engines.

Realtime GI: Realtime Global Illumination means light bounces, color bleeding and specular effects in realtime.

OGG Sounds: The Vorbis OGG audio compression format allows high quality sounds at low file sizes and streaming. Also licensing issues are important for 3D application development, where the OGG format provides a GPL free license.

C/C++ Support: The C and C++ programming languages have been the de facto standard for industrial computer software engineering since 1972 (C) and 1978 (C++). The support for external standard libraries is huge, and thus saves companies a lot of time and money when developing computer software. They create also the fastest applications.

Realtime Scripting: The engine can be controlled using a script language, and scripts can be changed on the fly.

Source Code Included: The engine comes with its source code. Many engines have also a seperate Source Code license, which can be very expensive.

Entity Based System: This means that everything in the 3D world is a 3D Entity (sounds, cameras, models, pivots, lights, emitters, etc...), which can be controlled with the same commands like MoveEntity, ScaleEntity, TurnEntity, HideEntity, ShowEntity, etc...
Entity Based Systems provide an easy learning curve, and powerful operations with simple commands, since no academic 3D matrix math is needed to be learned by the user.
Alternatives to an Entity Based System is a Node Based System or a Tree Based System.

Low End Support: This means basically that the engine can run with any existing graphics card.

High End Support: This means that the engine supports modern AAA 3D technologies, and requires a SM3/SM4 capable graphics card.

Physics: The engine has physics built-in and integrated.

OpenGL Commands: The user can freely program in OpenGL language on top of the engine's 3D rendering. This is normally needed only for special purposes, like for example drawing 3D lines in the 3D space. Usually the engine renders 3D graphics much faster due to its internal optimizations.

Realtime Editor: The engine has a native or 3rd party with plug-ins 3D Editor which shows the results of editing in realtime.

Cross-Platform: The engine runs natively at least under MacOSX or Linux.

Price under $1000: A point is given if the engine costs $1000 or less.


Grafos
1 Sunday, 19 July 2009 07:05:24 EET
Flow3D has got physics based on Newton 2.
Haven't used it but in my mind it's a better tool than the rest. You can give the same points for low end support and 256+ dynamic lights, there are features that are far more important than others. Proper documentation\tutorials and multi platform support are crucial and are not even covered.

Max3D is unfinished, if you put that on the list, you might as well put Nuclear Glory also.
Since this seems mostly Blitz oriented, where's Xors 3D and Ninfa 3d?

Grafos
2 Sunday, 19 July 2009 07:07:05 EET
meant to say
***can't give the same points*** :P

Mika
3 Sunday, 19 July 2009 07:59:44 EET
Ok, thanks for the update. Flow3D got 1 point more now.
I don't have any special criteria for "finished" or "unfished" engines, I mean they all should be updated anyway over time, don't they?
I have tried Xors3D demo, but not Ninfa3D. I just don't have enough info about them to put them up on the list. Can you give me their column infos?
Also Nuclear Glory is new to me, and I didn't find their web site on the first look.
Actually I just thought also about tutorials, including video tutorials as a new column.
About the the weight of each column I can only say that it's the best to have them all. It's like considering if you can live without an ear, eye, lung, finger, etc... Just have them all, or at least most of them, and you're happy.

Siarzuk
4 Sunday, 19 July 2009 08:11:06 EET
Your article about comparison engines is bullshit advertise! :\ OGG support? WTF? C/C++ support? WTF? Sorry, but kill self with shotgun!

Matthew
5 Monday, 20 July 2009 09:26:04 EET
I was pointed here by a friend of mine.

I'm building the Nuclear Fusion and Nuclear Basic software (Nuclear Glory). If you want specifics about the engine let me know and I'll post it up.

The big thing I would like to see added to this chart is big points for performance. All of the features are nice but aren't really useful if they run terribly slow even on the best hardware.

I know there's a world of difference in the amount of workload (and internal code) between a slow engine and a quick one. So it is pretty painful to see some of the slowest engines ranking the highest scores, LOL!

Just a thought if nothing else. :)

Mika
6 Monday, 20 July 2009 09:35:38 EET
Sure, you can just post the column infos about Nuclear Fusion, and I'll add it to the table.

Performance column is a good idea too, however it will be difficult to say for some engines, since I don't have them. But I can try to do some research.

Anonymous
7 Monday, 20 July 2009 09:46:43 EET
No, No, No, No, No, Yes, Yes, No, No, Yes, Yes, Yes, No, No

I scored a 5, haha.

My products shine in the performance and low-end department. Blistering framerates and support for Win98+. All the extra high-end "fills" possible via shaders.

I noticed DirectX isn't listed either. Not sure if that was intentional or not. I know it's favorable for Windows and some engines (like Leadwerks) lack it altogether.

But anyhow, glad if I helped in anyway. Even if I did score low. ;)

Anonymous
8 Monday, 20 July 2009 09:50:05 EET
Sorry, missed the last 2 columns: No, Yes

Another point!

Mika
9 Monday, 20 July 2009 09:55:13 EET
Price under 1000€: No. Are you sure? On the web site it says $59.

DirectX isn't listed, because a game engine uses automatically DirectX if it doesn't use OpenGL (except on consoles, where they have their own APIs). OpenGL just gives a bonus point; all engines would have the DirectX point, so it would not make any difference.

Mika
10 Monday, 20 July 2009 09:55:54 EET
Ah that explains :)

Matthew
11 Monday, 20 July 2009 10:02:38 EET
Cool :)

BlitzMax and Leadwerks don't offer DirectX at all if I my facts aren't outdated. Kind of makes a dividing line between "offers OpenGL" and "forces OpenGL" wouldn't you agree? :)

Mika
12 Monday, 20 July 2009 10:24:52 EET
Well, but OpenGL runs on Windows just as fine as DirectX; on my ATI X800XTPE and nVidia 8800 GTS 640 sometimes even faster (for example in Ogre3D and Torque).

The SM3(=DX9)/SM4(=DX10)/SM5(=DX11) info is generally used to describe a graphics card's capabilities, and it applies for OpenGL and DirectX the same way.

Grafos
13 Monday, 20 July 2009 16:49:10 EET
Only OpenGL had been troublesome for ATI until their latest generation of carfds and DirectX is considered the API of choice by most developers, so given a choice to support it should have been a point as well.

Mika
14 Monday, 20 July 2009 17:00:21 EET
That is history now. OpenGL had problems on nVidia as well. And DirectX had also problems on both :)

.Squid
15 Tuesday, 21 July 2009 23:28:49 EET
Hi!
Here is the present information about Xors3d:

OpenGL Support: No
Basic Dynamic Shadows: Yes
Full Dynamic Shadows: Yes (deferred shading)
256+ Dynamic Lights: Yes (deferred shading)
Realtime GI: No
OGG Sounds: Yes
C/C++ Support: Yes
Realtime Scripting: Yes
Source Code: Yes (contact developers via email)
Entity Based System: Yes
Low End Support: Yes
High End Support: Yes
Physics: Yes (PhysX)
OpenGL Commands: No
Realtime Editor: No (in development)
Cross-Platform: No
Price under $1000: Yes (100usd for Indie license)

Mika
16 Wednesday, 22 July 2009 01:18:34 EET
Thanks for the info!
One question about Source Code though: does it cost extra (price is not needed to know)? If yes, then I must put a "No" in the column, since other engines also provide Source Code for an upprice.
To balance this out, I think I need to add a "Source Code Included" column, and a "Source Code Available" column.

Zork
17 Wednesday, 22 July 2009 04:22:20 EET
totally ridiculous comparaison

Gigapoly
18 Wednesday, 22 July 2009 04:41:08 EET
That's brilliant stuff.

Mika
19 Wednesday, 22 July 2009 04:48:25 EET
Haha, you guys are funny :)
So I guess ("totally ridiculous comparaison"+"That's brilliant stuff") / 2 = "Good stuff".

.Squid
20 Wednesday, 22 July 2009 09:36:12 EET
Hi.
Yes. Source license costs extra money. Presently it's not available for everyone, it can be bought after negotiation only.

magallanes
21 Saturday, 28 November 2009 16:12:15 EET
Hi there:

This table chart rules.
And i think if you have trouble with the total then skip it.


Dead Parrot
22 Wednesday, 02 June 2010 13:35:26 EET
Flow3D ?! This engine is no more ! He has ceased to be. He expired and gone to meet with his creator. He is a stiff, bereft of life, he rests in peace. His programming processes are now history. He kicked the bucket. This is an ex-engine !!! ;-)

Mika
23 Saturday, 19 June 2010 03:03:06 EET
Yeah, I talked with the creator of Flow3D also, and he wants it to be free and open source. So it's not quite dead yet, it just needs a new realm of support. Meanwhile, Lucid is also taking part of the 3D engines race, although it's not exactly an 3D engine: http://siipi.com/public/mika.nsf/0/B5CB75FD2B141970C22572EB005BE015

drean
24 Monday, 09 August 2010 00:34:34 EET
Esenthel Engine now has OpenGL support, it is cross platform (Windows + Mac, iPhone will be soon), and entity based system is available since long time.

Mika
25 Monday, 16 August 2010 06:00:19 EET
Thanks for the update on Esenthel. It's nice to see that engine get better, since it's definitely worth a higher rank.