Hi 2147
No. You Could use USphereComponent* 's, for example, that have overlap functions bound to them in the constructor;
InteractionSphere = PCIP.CreateDefaultSubobject<USphereComponent>(this, TEXT("InteractionSphere"));
InteractionSphere->OnComponentBeginOverlap.AddDynamic(this, &AMyClass::OnBeginOverlap);
InteractionSphere->OnComponentEndOverlap.AddDynamic(this, &AMyClass::OnEndOverlap);
InteractionSphere->AttachTo(RootComponent);
InteractionSphere->SetSphereRadius(200.f);
They are attached to the root component and appear after the root component in the components hierarchy in the BP…
The interactionSphere would be declared;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Interaction")
class USphereComponent* InteractionSphere;
in the header…
Hope that helps!