SlicerVirtualReality icon indicating copy to clipboard operation
SlicerVirtualReality copied to clipboard

Flying stopped working

Open cpinter opened this issue 4 years ago • 8 comments

In the past, when pushing the joystick on the controller forward/backwards it was possible to move in the scene by flying. It does not seem to work anymore.

Slicer rev30277, Windows 10, latest SlicerVR master (actually this branch but it is based on the latest master and it does not make any changes in the VirtualReality module but only adds a new module).

cpinter avatar Oct 25 '21 15:10 cpinter

It may worth a try updating to the latest SteamVR on your computer and to the latest SteamVR libraries in the SlicerVirtualReality build.

lassoan avatar Oct 25 '21 15:10 lassoan

Yes I updated the OpenVR version in External_OpenVR.cmake and building it now.

cpinter avatar Oct 25 '21 15:10 cpinter

Unfortunately updating OpenVR didn't solve the issue, flying still doesn't work.

The B button (on Windows Mixed Reality headset) does something similar, but the behaviour seems odd and it cannot really be used as a replacement.

cpinter avatar Oct 25 '21 16:10 cpinter

Does the interaction style object receive the interaction event?

lassoan avatar Oct 25 '21 16:10 lassoan

I will need to debug that.

cpinter avatar Oct 25 '21 16:10 cpinter

I’ve talked to @jcfr today about VR support. They have finished porting OpenXR support into VTK master. @jcfr is now working on updating Slicer’s VTK to this latest master. When this is done, you could try switching to OpenXR. It may solve this issue (while of course it may also introduce some regressions).

lassoan avatar Oct 26 '21 20:10 lassoan

This sounds really great @lassoan ! We'll get to it as soon as Slicer's VTK is updated.

cpinter avatar Oct 27 '21 09:10 cpinter

@lassoan 's comment:

Regarding flying not working. This error (see KitwareMedical/SlicerVirtualReality#89) indicates that recognizing gestures was refactored in the vtkOpenVRRenderWindowInteractor base class:

In file included from /home/jcfr/Projects/SlicerVirtualReality/VirtualReality/MRML/vtkVirtualRealityViewInteractor.cxx:21: /home/jcfr/Projects/SlicerVirtualReality/VirtualReality/MRML/vtkVirtualRealityViewInteractor.h:43:16: error: ‘virtual void vtkVirtualRealityViewInteractor::RecognizeComplexGesture(vtkEventDataDevice3D*)’ marked ‘override’, but does not override 43 | virtual void RecognizeComplexGesture(vtkEventDataDevice3D* edata) override;

The interactor in SlicerVirtualReality needs to be updated accordingly.

cpinter avatar Mar 02 '22 14:03 cpinter

Once this branch is integrated into the upstream master we can close this ticket https://github.com/LucasGandel/SlicerVirtualReality/commits/fix-grab-dolly-interactions

cpinter avatar Feb 03 '23 12:02 cpinter