Where to start (just migrated from Unity)

Hello, i’ve been used to use Unity Engine before to make games, but now i’ve started using Unreal Engine for the first time, i tried to look at the official tutorials of the documentation, but it doesn’t look as straightforward as it was in Unity to learn things
I’ve some C++ knowledge that i learned and i’ve been used to use a bit SDL in the past so i thought it would just be a bit similar, but the API documentation seems a big confusing since i never know which headers i must import and never know which class i should use
i read the various documentations, such as the documentation made for Unity developpers, it was useful to understand the interface,however the way it works is a lot different, on Unity it was simply “creating a gameobject, adding it in the scene, adding some components, creating components through script, in Unity it was C# and it’s ready to use” in Unreal Engine it doesn’t seem to work through the same schema
that’s why i’d just like to find a way to understand the way Unreal manages this

i’ve already watched some official video tutorials, i saw for example the third person blueprint tutorial, the problem is that with blueprint, i don’t understand at all what i’m doing, it’s simply copying what the guy used in the video but it doesn’t feel like making our own scripts, i wanted to make my scripts in C++ and assign it to the objects, or more like it’s said in unreal, to the Pawns, but the C++ doc is not straightforward at all, i don’t even know what i should read first in the doc because nothing is explained about it

thanks in advance for your help

I’d recommend getting a good grasp on the Gameplay Framework and after that look at ClassCreation. Don’t avoid the C++ Class Wizard. It will help get you going.

If you find yourself wondering what header to include to access a class, search for that class in the documentation. At the bottom there will be the Module and the Header.

Take AVolume for instance. It’s in the module Engine and the header Runtime/Engine/Classes/GameFramework/Volume.h. Now you could technically include Runtime/Engine/Classes/GameFramework/Volume.h, but because the headers are in the Classes folder and you’ve included Engine as a dependency in your *.build.cs (or it’s a public dependency of another dependency you’ve added) it’s available as GameFramework/Volume.h. Note: If the folder was called Public instead of Classes it would also work.

I would recommend you explore some of the example projects and browse the source code to learn from it. Remember that unlike Unity in Unreal you can read all the source code and figure out how Epic’s developers built every module.

Thanks for your suggestions