XRI 3.0 input configuration manual value not working

I changed the “manual value” and the “manual performed” bool in my other scripts, it changed the appearance of the interactor in the editor inspector, but did not actually change the behavior of the near-far interactor in my scene, neither in the simulation mode nor in streaming mode.
It works well when I directly check the box on the interactor component, but it doesn’t work with changes from other scripts attached to the same object, regardless of the appearance in the same checkbox.

The documentation on the manualPerformed and manualValue properties don’t make it that clear, but there are additional properties you will need to set to make the ReadWasPerformedThisFrame and ReadWasCompletedThisFrame methods return the values you would expect since otherwise only ReadIsPerformed will be correct. You will need to also set manualFramePerformed and manualFrameCompleted to the Time.frameCount you want them to apply for.

An easier way to handle this instead of setting all the properties directly is to use the QueueManualState method. That method will make the bool and float value input change take effect on the next frame, which is what the Inspector window is doing when you click the toggle.

The Near-Far Interactor has Select Action Trigger set to State Change by default which means that it will only allow select if the Select Input went true that frame (it reads ReadWasPerformedThisFrame instead of ReadIsPerformed).

1 Like