I am unity developer, C# user so far for 4-5 years.
I am seriously thinking switch to UE4 or at least studying it and learn it a little.
So here is questions.
UE4 uses C++, right? then UE4’s language is exactly same with C++ or added version of C++? like Unity uses c#, but there are many unity specific function exist.
C++ doesn’t have memory garbage collector, right? Then how deal with memory issue? IS it easy to learn from C# user?
So now UE4 is free at first, then what is Unity’s advantages? I think it is because Unity asset store’s quantities compared to UE4’s marketplace, is this true?
anything else?
It’s C++ but the Unreal Engine is a huge framework and most of the time you’ll work with classes from this framework. The way these interact with each other is a lot closer to C# than regular C++. You should not let this be a reason not to use UE4 if you’ve done 4-5 years of C# programming, you’ll pick it up quickly I am sure.
Unreal will handle memory management for all the Unreal Engine classes and objects. It’s also common to use “smart” pointers in C++ these days, which handle their own memory similar to an object in C# would. Memory management has also got a bit of a bad rep. I’m sure it can be a nightmare if you work on huge projects with many people adding to the code but if you’re a single person it’s not an unmanageable thing. It’s difficult in the same way Minesweeper is. There are very simple rules for how to use it and the difficulty comes from a larger game board where you’re more likely to make a simple mistake.
There are many other threads about Unity vs UE4 but the simple answer is there’s no one single best game engine. It’s always about the right tool for the right job. All technical details aside, personal preference will be something to consider here. You should explore Unreal Engine and decide if you like it or not because you’re the one who’ll end up having to use it.
If you’re comfortable with Unity one reason to switch could be to just get some experience with a different engine. Unreal is also quite popular with both large and small studios so it would hardly be a waste of time to try it out and learn a thing or two.
In Unity you don’t have the control over shaders… Wanna flip the G channel of a normalmap in Unity ? Go start Photoshop… In Unreal you just throw a multiply at the material. In general, the engine gives you much more control over what you are doing. The more i was working with Unreal the more i realized that Unity doesn’t stick to industry standards and is way behind it as well.
The list goes on… SpeedTree in Unity = slow and ugly, in Unreal they look nice and don’t hit performance as hard as in Unity. Hell, before U5 came out you couldn’t use a 4k heightmap without the editor crashing and that was just a few months ago that Unity5 came out.