I’ve used Unity for years, it’s far from just about graphical features. Instantly cut down draw calls on terrain meshes by lowering pixel error and modifying base map distortion, modify a whole system of grass meshes by changing the control resolution. Instant LOD additions and changes, re-merge scripts for mesh binding… Instant frustrum decisions straight on a slider, baked occlusion culling which affects shadow casters with umbra, static batching, GPU skinning etc.
I could easily make a game in Unity that isn’t worlds apart, but performs a lot better and it takes around 30 minutes to hop around and optimise. I got sick of upgrading everything and being at the mercy of it’s former limitations, I couldn’t wait forever… After I built a new lighting system to replace beast because it constantly crashes, that was it, plus it was soooo slow for anything involving lightmapping. It’s replacement is just as bad if not worse… I had all sorts in Unity 4, real time reflections, used PBR via LUX so as said not worlds apart.
There is a reason Unity is popular and I think a lot of people don’t give it credit, just because it comes out the box like a graphical eyesore it doesn’t mean it’s not capable. But to get it up to the level of UE4 it’s too much work and I vowed to make games, not work on engines all the time…
Unity is perfect for smaller games… All engines have pro’s and cons.
I’m very interested to learn about all the performance enhancing features UE4 has, I’ve not gotten to deep into it yet. But from comparing similar setups, one is definatley heavier than the other all things being equal.