If C# is what you want to learn … then Unity would be the engine for you. Personally I think you will get more mileage with C++ and UE4 … because you have the flexibility of Blueprints and the power of C++. If you plan on making a career as a game developer … you will get more opportunities with C++ than you will with C#.
I know Java and C# and C++ … I have been coding professionally for 19 years now … this has been my experience. 8-}
From what you’ve said, I would suggest that you learn Blueprints. There’s very little you can’t do with Blueprints, and if you get to a point where you feel you need C++ for something, you’ll have a good grasp on a lot of the fundamental concepts from having learned Blueprint and will really only need to learn syntax and things like memory management that Blueprint users are shielded from.
The concepts are hard, syntax is easy. If you’re a visual thinker, use Blueprint to learn the fundamentals and worry about C++ later, if you need to.
It is a little … but it still gives some valuable insight on how to get things going and some of the basics needed to get them going. I see it more of a gap filler between learning Blueprints and then wanting to get your hands dirty with UE4 C++.
It isn’t too much effort to bring the content in the book up to 4.7.6 or 4.8 … and I found it made me think about things more as I was trying to find the right objects to use. 8-}
> Don’t bother with C# or JavaScript … they will not help you with UE4.
While true the skills you learn with C# or js won’t directly help with C++/UE4… BUT learning any language and how to program doesn’t hurt and will make you more well rounded anyway.
It uses same C++ as anywhere else, it’s not version of C++ it’s C++, just have fancy macros which you can see in different project too. We already have people confused with legendary “UE4 C++”