UFUNCTION
Används i header-filer för att ange exponera en funktion till Unreal-editorn.
Mellan parenteserna anges en specifier och eventuella extra inställningar/tillval.
Blueprint functions
I Blueprints så är funktioner block som kan köras. De utför ett arbete som antingen påverkar något i scenen eller där resultatet lämnas vidare till andra block.
| Specifier | Effekt i blueprint |
|---|---|
BlueprintPure | Enkel statisk funktion; tar emot eventuella inputs, häver ur sig outputs, påverkar inte objektet. Funktioner som är const blir automatiskt BlueprintPure. |
BlueprintCallable | Funktion som kan påverka objektet, och kan kedjas ihop med andra körbara funktioner. |
Events
I Blueprints så är events block som aktiverar andra block. Events är röda och ligger alltid i början av kedjor av andra block. "När det här händer, så…"
| Specifier | Effekt i blueprint |
|---|---|
BlueprintImplementableEvent | Event som kan anropas (aktiveras) från C++ för att sätta igång kedjor av händelser i Blueprints. Saknar implementation i C++. |
BlueprintNativeEvent | Event som kan anropas (aktiveras) från C++ för att sätta igång kedjor av händelser i Blueprints. Kan ha en implementation i C++. |
BlueprintNativeEvent
För BlueprintNativeEvents så kan man, om man vill, ha en default-version av logiken som ska hända när funktionen körs. Denna kan sedan ersättas genom att man skapar en händelsekedja i en Blueprint istället. Med andra ord lite som virtual/override; man definierar en default-version som kan skrivas över i subklassen (blueprint-versionen).
Deklarationen i headerfilen och implementationen i cpp-filen ges olika namn; implementationen döps till deklarationsnamnet plus "_Implementation".