Hi there,
I have been busy with CryEngine 3 (CE3) last days, after all these thread here covering other AAA engines ;). I have digged quite a bit into the C++ code of CE3 right now and so far I have to withdraw my previous statement about it being crappy. It is cumbersome, but so far it is one of the best pieces of API code I have ever seen (that is probably also the reason why it has almost not changed for 10 years now). I am going to port my “half” Unity game to CE3 right now, this will take quite some time but this post covers the reasons. This is no flame thread or anything, so if you really want to know an objective, but technical, view on CE3, from a person who really likes Unity (at least for what it was made for), you will get it. It took me quite a while to write this, so I would appreciate constructive feedback and don’t convert this in a flaming thread please, we have enough of them about this subject already ^^.
First, let me tell when you don’t need to bother about CE3, so you don’t waste time in this thread:
- You want to create mobile games or games for low-end hardware
- You are not going to create FPS like games with some sense of certain realism, say Crysis or Age Of Conan. Though one sure can with CryEngine, it gets nasty, just like with UDK, maybe even more.
- You have no in-depth programming skills in C++ or can accept the limitations of Lua, the scripting language of CE3 (for now)
- You have no good models to put into your game anyway, in that case CE3 makes only limited sense, even though you might still want to use it, see more below ^^
- You want Mac/Webplayer support ^^. CE3 does not support it, because of driver limitations on apples site; and as for the webplayer, well ^^ its quite obvious here I guess (a decent level makes up to gigabytes of data). But CE3 (to my surprise) supports Linux!
- You are new to gamedev! Use Unity first, understand it, push it to its limit, then switch to CE3 if you think you need it. If you don’t master Unity, you have no chance with even simple things in CE3, I promise you…
- You just don’t miss anything in Unity. In that case you might still wanna read on…
A DROP IN COLD WATER
So now some eye-candy videos to bring us all on the same line about what kind of graphic we are talking about, they are all more than worth watching I can’t even recommend one in particular:
Realtime Radiosity
DirectX 11 CryEngine
CryEngine Promotion
Another Good Promotion
So you might come up with “But these are all just promotion videos, you can’t take them seriously!”. No, you can! This is what impressed me most (and convinced me finally) of all when I first started the CE3 Sandbox editor. It just looks damn awesome, without doing anything. Just pick some AAA models, stuff them in and enjoy. This is something I have never seen before. In UDK you would have to twist your brain to come even close to what Unity Pro is capable of, while UDK is capable of the same things as CE3 but most people have no chance in unleashing this power… But what you get with CE3 by “default” is just beyond measure, and I am not kidding. Of course this has its price. CE3 only runs on recent hardware, but the fact that it runs on these crappy consoles already proves that it can’t be that bad. At least it doesn’t even start on my 2010 notebook (damn Intel HD). What is also impressive is that the “empty” default scene in CE3 already has 200k polygons of interactive water. That is quite funny because this very scene would already come in a range close to what Unity can do at all, but it is a god damn empty default scene in CE3 ;). And also if you look at the second video, you can see that there is NO point at all comparing CE3 with Unity. These are different worlds for different audience! It’s you who has to decide which audience he wants to/can please.