I play games on my computer often and I see a lot of games using the Unreal engine. Can someone explain why do developers choose to use this engine? In my opinion there are much better alternatives. For example games running on the cry engine look way better and the engine itself is more optimized.
The unreal engine, or more specifically the Unreal Development Kit (UDK) is a very versatile and user friendly engine. There is a big community involved with it and it has great documentation and support for it. Furthermore, everyone can use the complete engine for free until a good amount of cash is earned with your product, i believe that is $50.000 I'm not familiar with the cry engine but i'm pretty sure it is not as versatile. Other then that, you say the cry engine looks way better, i doubt that. Since UDK is so versatile you can write your own shaders for it, i have seen very beautiful shots from the UDK engine, though i never compared it with cry engine.
That being said, a developer should pick a platform that will work for his game. If you need all the optimization you can get don't pick an engine at all but write one in C++. That goes for all needs.