UObject
Roten i Unreal Engines klasshierarki, som ger vanlig C++ reflektion, skräpsamling och serialisering den inte har från början.
C++ saknar både reflektion och skräpsamling, så Unreal bygger dem själv. Klasser märks med makron som UCLASS, UPROPERTY och UFUNCTION, och verktyget Unreal Header Tool läser källkoden före kompilatorn och genererar metadata. Det är den som gör att egenskaper syns i editorn, sparas till disk, replikeras över nätet och går att anropa från Blueprints.
Skräpsamlaren är mark-and-sweep och följer bara pekare den känner till. En råpekare till en UObject utan UPROPERTY är osynlig för den, så objektet kan samlas in medan pekaren fortfarande används — en av de vanligaste krascherna i Unreal-kod. AActor, allt som kan placeras i en bana, ärver härifrån.