Simple question - Does a trigger volume have to be THE root component

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!

I have a fairly simple question, does a trigger volume have to be THE root component because every time i attach it to the root component it crashes be it doesn’t crash when it is the root component?

ah yes that worked but i had to write it like this in the header

UPROPERTY(VisibleAnywhere, Category = Default)
         USphereComponent* InteractionSphere;

Thanks