You have a vision, maybe an idea, perhaps you’re just curious; for whatever reason you’re about to ask if Unreal can make (X).
Yes. Ok, now go get to work.
If you know what you’re doing, this is what you are looking for.
There are a few hangups when it comes to photo-realistic rendering having to do with lightmaps. I’m not sure if this has been resolved since 4.8, if someone could comment. To my hobbyist’s eye, it does a pretty good job.
If you’re totally new to both game design and Unreal 4 that’s OK! You’re probably not making Zelda, Call of Duty, or the next World of Warcraft however if you’re struggling to make something like Tetris. Those task are complicated for even well equipped teams. Just dig in and start making things, there are lots of amazing YouTube videos and Wiki articles to get you started.
If you are evaluating Unreal Engine 4 for a potential project, you should already be versed in the engine. You should have experience with every prospective engine before you even get to this point.
You have the total source of the Unreal Engine available to you, so given enough experience and time you could create anything. Rama has provided some excellent examples!
Things to know as of UE4 4.10.
Mobile game builds are large, too large. Depending on your needs you might want an alternative solution. These is some instruction on reducing the compiled size, but it needs work.
2D with UE4 as of 4.10 is still rather terrible. If you are making a complex 2D game, Unity is probably what you want. Though this is shooting myself in the foot as I would love to see more work put into 2D, but that will only happen with demand.
The marketplace is awesome, vetted (everything is reviewed for quality), and somewhat barren. If you are relying on assets to create your game, you might be disappointed. This gets better every day, and I expect it to only grow as Unreal Engine grows.
Unreal Engine 4 uses its own flavour of C++ and Visual Studio 2015. This frightens allot of people, but it’s basically a scripting language at this point. Blueprints (visual scripting) is the alternative, and you could actually create an entire game without ever opening Visual Studio. Many opt to use both, since scripting and Blueprints play to each-others strengths.
The programming documentation is still anemic and out-of-date in places. Epic is doing a great job catching that up, but it still has a way to go as of 4.10.
So how should you evaluate your engine choices? This is just my opinion, but I make Tetris. Making a small but complete game, from conception to launch will give me a rather large amount of information. Game Jams are also a great way to really dig in.
Stop fretting about what engine to learn, and just learn. As a game developer you should always be infinitely curious and striving towards excellence, part of that is a well rounded education. A lacking in the field of maths will hurt you far more than picking the wrong engine for a project.
Most importantly, have fun and lurk more.