Retrouvez les vidéos de la journée d'étude Gitlab, le compagnon pour votre production scientifique organisée par le GT DOREMIT : https://www.canal-u.tv/chaines/ad/journee-gitlab

Skip to content

Add Go Go Interaction to the toolbox

Quentin Mayer requested to merge gogohand into develop

Description

Add the Go Go Interaction as a new tool to the package. It is an interaction technique that extends the user's arm reach to allow him to and manipulate objects from afar.

It consists of a secondary controller attached to a main one that will reproduce its functionalities. There is two different method included to manipulate this new controller :

  • By tracking the user's hand position and defining a speed given it's distance to an anchor point in the scene. An included three dimensional UI indicates the current speed of the Go Go controller (between five different speeds, from going forward at high speed to going backward at high speed, and also a dead zone with a speed of zero as a middle ground). To activate the Go Go Interaction, you just need to push your arm forward at a certain speed.

  • By tracking a Vector2 input and mapping a speed ratio to it.

The tool needs the XRI Interaction Toolkit, as well as the Unity Input System in order to work.

The Go Go Interaction will replace the main controller when active, so you don't have to manage both of them. You can reset the Go Go controller posision or disable it and use the main controller again.

The tool contains materials for the Unity Standard Render Pipeline and the URP.

Testing

The Go Go Interaction was tested both with Unity Play Mode and after a build. It is also fully compatible with the Workbench and the Meta Quest 2. The scenario tested on the Workbench was to grab a cube in a scene with the help of the Go Go Interaction. This scenario can be replayed with the scene "SampleWorkbenchTestGoGoHand" in Unity. In this scene, the tracking version is enabled and the input version is disabled. With the Meta Quest 2, the scenario is the same but takes place in a different scene. Precise manipulations with the help of the Go Go Interaction were also tested with objects in the scene that can be snapped to their sockets.

Here are examples with both versions :

Tracked version go_go_interaction_testing
Input controlled version go_go_interaction_inputcontrolled_testing

Merge request reports

Loading