How does the blueprint system work ?

Hi everyone,

I have spent quite a time with the blueprint editor and I really like it. I am curious though, how is it technically made ? How does unreal execute blueprints ? How does ue find out the available nodes ?

I would love to see some code. docs are not that detailed on this topic.

lol this is very complex topic.
They built a custom compiler that generates “reflection data” and auto generated c++ code… later on these nodes’ data are packed in binary format and run by a virtual machine in your game that interprets the blueprint graph.

The reason why a virtual machine is used to run Blueprints is so that the same Blueprints you create can be used on every platform, PC, PS4, iOS, Android, etc.
Otherwise for each platform most of your blueprints would need to be converted to different native code of target platform every time (I think Unity do it this way, for each platform the final generated code is different, making Unity’s engine source code not pleasant to look at)