Skip to content

Instantly share code, notes, and snippets.

@apocalyptech
Created July 25, 2021 16:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save apocalyptech/ca9ae5b81d6656d803af6bff67706cd2 to your computer and use it in GitHub Desktop.
Save apocalyptech/ca9ae5b81d6656d803af6bff67706cd2 to your computer and use it in GitHub Desktop.
Found by HackerSmacker:
https://github.com/EpicGames/UnrealEngine/blob/f8f4b403eb682ffc055613c7caf9d2ba5df7f319/Engine/Source/Editor/KismetCompiler/Private/KismetCompilerVMBackend.cpp#L2160
^ the meat of the processing apparently happens in there.
This header looks like it's got the opcodes in it:
https://github.com/EpicGames/UnrealEngine/blob/f8f4b403eb682ffc055613c7caf9d2ba5df7f319/Engine/Source/Runtime/CoreUObject/Public/UObject/Script.h
To check out at that specific point, as per this URL: https://stackoverflow.com/a/43136160/2013126
git init
git remote add origin https://github.com/EpicGames/UnrealEngine.git
git fetch --depth 1 origin f8f4b403eb682ffc055613c7caf9d2ba5df7f319
git checkout FETCH_HEAD
... that's in /usr/local/winex/ue4 at the moment. The single commit
will take up 2GB on disk! Note that I'd need to use token auth soon
to use that origin URL (or just use key-based SSH instead)
----
Compilation for a function probably starts with: FKismetCompilerVMBackend::ConstructFunction
... for a class: FKismetCompilerVMBackend::GenerateCodeFromClass
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment