/Engine/Source/Runtime/CoreUObject/Public/UObject/Object.h
Create an optional component or subobject. Optional subobjects will not get created if a derived class specified DoNotCreateDefaultSubobject with the subobject's name.
template<class TReturnType> TReturnType * CreateOptionalDefaultSubobject ( [FName](API\Runtime\Core\UObject\FName) SubobjectName, bool bTransient )