Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Line of sight sharing #35

Open
wants to merge 119 commits into
base: develop
Choose a base branch
from
Open

Line of sight sharing #35

wants to merge 119 commits into from

Conversation

stevenzambr
Copy link

@stevenzambr stevenzambr commented Jan 26, 2020

Line of sight sharing is a feature that allows users in a room to see where other users are looking by displaying an object and text with the name and device icon the user is using at the line of sight position (for Hololens) or at the pointing position of a controller (for HTC Vive). This feature is activated and ready to use upon entering a room.

There are three buttons located on the settings panel on the left side of the opened main menu cube. The left "share/unshare my gaze" button allows users to toggle between sharing or not sharing their own gaze/pointed object with the users in the room. The middle "enable/disable sharing" button allows users to toggle between turning off and on the feature, in the "off" state all the arrows disappear for the user that has disabled the feature and his object is not shared anymore. The right "change object" button lets users toggle between four different objects to show as their gaze/pointed object, these include a circular arrow, a conic arrow, a monkey arrow and a spheric arrow.

Use with Hololens: Use head movements to control gaze object position and hand to use the three settings buttons.

Use with HTC Vive: Use controllers (left or right) to point at objects and click to set the position of the gaze object. Use normal controller pointing and click to use three settings buttons.

Use with unity editor: Read important remark below and use gesture hand from input simulation service found in the mixed reality toolkit to test as controller of HTC Vive. When the hand is not taken out the feature continues working with the hololens implementation, this allows for simultaneous testing of Hololens and HTC Vive in the unity editor.

Currently not implemented for android devices.

Important remark : Feature is implemented to be tested on devices (HTC Vive or Hololens 1).
If testing in unity editor is desired the line of code 38 in "ArrowControllerHandler.cs" and the line of code 143 in the "InstantiateArrows.cs" have to be changed from

if (controller.InputSource.SourceType == InputSourceType.Controller)

to the following line of code :

if (controller.InputSource.SourceType == InputSourceType.Hand)

stevenzambr and others added 30 commits January 9, 2020 11:48
Arrow appears on test objects by click
Next step is to make it always appear
Fixed bug of controllers not showing arrow on all objects
Added UI Button to left settings panel of open cube
Implemented share/unshare gaze feature
Implemented the enable/disable gazing button
Changed button layout to 3 buttons
Removed unused scripts
Updated possible bug to sharing gaze feature (to test)
Added label with text over arrow displaying information, currently only showing HTC Vive / Hololens
Implementation of user name in label missing
Small update to the label showing what device is currently being used to show gaze, update enables to see other users device on own scene
Working share/unshare button in room with multiple users, every user can choose to share or not to share his arrow
To fix : position/rotation of share button when cube is closed/moved
Added UI layout overlay for Hololens resolution on top right corner to show who is watching where with what, feature with correct text not completely implemented yet
Fixed bug of button not being in the right position
Disabled 3 gaze feature buttons from cube when not being in a room, they appear after having joined a room
Toggle between showing and not showing overlay UI that currently lists all the users from the room
Added SerializeView fields in the InstantiateArrows script in order to connect the icons in Inspector
Competence display bars are still not pointable
Repository stats bars are not pintable either, however I managed to make them pointable in Editor
…table

Now, Vive has the same pointing abilities as the hololens regarding the visualizations
Modified the InstantiateArrows script to check which scene is being used in order to omit referencing non-existing scene objects.
Modified the GazeShareOnClick script in order to omit repeated connection attemts that were leading to errors.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants