Blueprints vs coding

Hi Mark,

Blueprints don’t actually compile down to C++. Their parent class may be C++ (or another blueprint), but they actually build a new UClass in memory, with a UFunction containing bytecode for each graph in your blueprint, and a UProperty per member variable you declare. There is a text-based backend that you can enable (used mainly to debug the compiler when extending it), but it’s a long sight away from text you’d want to paste into your C++ class (CompileDisplaysTextBackend in BaseEngine.ini if you’re curious, but it’s not pretty…).

However, going the other way is very easy. If you want to expose new functions or variables from C++ to blueprints, you just add BlueprintCallable to the UFUNCTION() declaration, or BlueprintReadWrite to the UPROPERTY() declaration.

Cheers,
Michael Noland