How to work with UE4 source code?

Hello i’m very happy to write on this forum. As all knows unreal is free for everyone, and thats means a lot of new people is coming to check it out

i’ve been doing small things on unreal with c++ for about 2 months now, using the basics, but now i want to take a step forward and start to learn how to modify the engine from the source code…

So here is my question…(i’m sorry if the questions are dummy, is just that i started this source code subject and im completly lost, so be patient please :slight_smile:

Why should i work with the source code?
What can i do with the source code?
And there is any documentation or tutorial that teach how to work with source code?

Any contribution will be great and i’ll be very thanks with you :slight_smile: (also pardon my english, i can defend my self but is not my mother language)

Why u should work with the source code depends on your goals.
Some people use it to customize it, others for debugging, others for having the extra’s …
Keep in mind if u modify the engine source code and there are updates, u might run into issues (source control merging conflicts)

With the source code u can do about the same as u do with the launcher installed version (this one also contains the source code … see Program Files/Epic Games)
In the launcher installed version, some things are not available to reduce install size (server build, full debug build …)
U could also disable modules u dont need …

If u search the wiki, enough tutorials on how to use the engine version, but it’s simple
Download source
Run Setup.Bat
Run GenerateProjectFiles.bat
right click your project “.uproject” file and choose select engine version

Here is sample why engine source can be usefull (or at least why im using it)
In the installer version u have DebugGame build in visual studio which not allow stepping trough engine source code for debugging.
Source code version has a Debug target which does allow
Source code version has Server builds, which is required for building dedicated server.
I use the installer version on my dev pc cause compile times are bit better.
Only when i run into issues i need to debug and step trough engine source to see whats happening behind my code i switch to source version.
On my build machines i only use source version cause they create the release builds which include dedicated server.

Thank you very much that was very helpfull

I would like to modify the NSWindow creation code for my Mac OS version of Game - should I download and recompile all the source code from git hub
or I just can modify the UE4 project that I see in editor :

Screen shot
Screen Shot 2017-01-02 at 5.03.56.png