diff --git a/Source/RWTHVRToolkit/Private/Interaction/Interactors/DirectInteractionComponent.cpp b/Source/RWTHVRToolkit/Private/Interaction/Interactors/DirectInteractionComponent.cpp index c8cf9ce35e45d0bc107cd73da08333ef5ba5b2d9..7c81cb805f86e3d9a4de4bfa2c594ab02a683719 100644 --- a/Source/RWTHVRToolkit/Private/Interaction/Interactors/DirectInteractionComponent.cpp +++ b/Source/RWTHVRToolkit/Private/Interaction/Interactors/DirectInteractionComponent.cpp @@ -120,6 +120,7 @@ void UDirectInteractionComponent::OnBeginInteraction(const FInputActionValue& Va } else { + CurrentlyInteractedComponents.Empty(); CurrentlyInteractedComponents.Reserve(CurrentlyInteractedComponents.Num() + CurrentInteractableComponentsInRange.Num()); for (UInteractableComponent* InteractableComp : CurrentInteractableComponentsInRange) @@ -139,6 +140,7 @@ void UDirectInteractionComponent::OnEndInteraction(const FInputActionValue& Valu Component->HandleOnActionEndEvents(this, InteractionInputAction, Value, EInteractorType::Direct); } } + CurrentlyInteractedComponents.Empty(); } UInteractableComponent* UDirectInteractionComponent::SearchForInteractable(AActor* HitActor)