Skip to main content
Participant
September 14, 2022

InputOVR Poke Interactor "Active State" and "Interactable Filters"

Hello,

I'm trying to get the poke interactor to only poke buttons when pointer finger is extended (otherwise I have lots of accidental pokes).  I'm using the CustomHandLeft and CustomHandRight prefabs.  I did a little workaround with a script that turns off the "Controller Pointer Pose" component when the hand collider is not active, but I noticed there is an optional "Active State" and "Interactable Filters" inputs in the ControllerPokeInteractor script component.  When I search the script, I don't see anything related to "Active State" or "Interactable Filters" and I can't find anything (or maybe don't understand) in the documentation.  It feels like I made a workaround for something that is already implemented (and probably implemented better than what I did).  Any help is appreciated.

This topic has been closed for replies.

7 replies

Up and Coming
April 12, 2023

For anyone wondering what "Interactable Filters" do and who, like me, could only find this question when searching on the net (the lack of detailed documentation on the components of the Oculus Interaction SDK is appalling), here's what I found out by digging in the source code:

An Interactable Filter is basically an interface (its exact name is IGameObjectFilter), which has a single "Filter" method taking a GameObject as parameter and returning a boolean value saying whether the object can be interacted with or not with the interactor. Two implementations of that interface are provided: SecondaryInteractionFilter and TagSetFilter. The one you might want to use to specify which specific objects a HandGrabInteractor can interact with is the latter. You need to add TagSet and TagSetFitler scripts to the Interactable objects you want to filter for and define tags (which are just strings, not GameObject tags). Then, you add your Interactable object to the "Interactable Filters" list in the HandGrabInteractor and it will only interact with those objects.

You can of course create your own implementation of IGameObjectFilter with the rules that you want if tags don't fulfil your requirements.

New Participant
October 2, 2023

Ty man!
I have to specify you should add TagSet on your interactor or interactable GameObject (where you have the script) and the TagSetFilter on the object this one should interact and insert this in the "interactable/interactor filters" field.

New Participant
November 22, 2024

I have been pulling my hair out trying to get this to work, I think I have tried every combination possible.... Are you able to provide a step by step guide or screen shots of what it should look like please? I am using interactable objects and snap locations and just want certain object to be able to snap to certain snap locations.

New Participant
January 12, 2025

almost any post i see on this topic is always not clear enough to understand

New Participant
January 15, 2025

Mungochopoer have you gotten it  to work

New Participant
January 16, 2025

Yes I did, instructions below - works for me

Interactable Object,

under Snapinteractor object Add Tag Set Filter (script)

Under Optionals

Add a Tag and name what you want

Drag Tag Set filter to Snap interactor/Optionals/Interactable filters1

  

On Snap Location

Add Tag Set (script)

Add same tag as above

New Participant
March 6, 2025

you just saved my day!