Recs.
Updated
SpecsUpdate
Pros
Pro Professional feature set for all aspects of game development
Almost everything a game developer wants has a deep and sophisticated tool waiting for them in UE4. No external plugins are needed to make powerful materials, FX, terrain, cinematics, gameplay logic, AI, animation graphs, post process effects, lighting etc.
Pro Versatile flow diagram script model
UE4's Blueprint scripts resemble flowcharts where each box represents a function or value, with connections between them representing program flow. This provides a better at-a-glance indication of game logic than a simple list of events, and makes complex behaviors easier to accomplish.
Pro Potential for amazing graphics
Seriously, have you seen any of the Unreal Engine 4 graphics floating around on the internet?
Pro A visual scripting system for non-coders enables quick prototyping
Blueprints are authoring tools designed for non programmers so designers and other team members can help tweak and prototype. UE4's Blueprint scripts resemble flowcharts where each box represents a function or value, with connections between them representing program flow. This provides a better at-a-glance indication of game logic than a simple list of events, and makes complex behaviors easier to accomplish and games a lot faster to prototype.
Cons
Con 2D features not actively developed anymore
The 2D feature set, named Paper2D, is in maintenance mode since 2017 (see developer’s comment): any new feature will have to be provided by marketplace plugins or through code contributions.
Con 5% royalties
The license for UE4 requires that Epic Games be paid 5% of sales revenue from any game published. (The first $3,000 per quarter is exempt.)
Con Slow
Compared to other engines, UE4 seems to perform various actions considerably slower. Actions like starting the engine, opening the editor, opening a project, rebuilding shaders, updating references, calculating lightmaps, saving projects, etc take long enough to get irritating and end up wasting precious development time.