Skip to content

Project Status

unimatrixZero1 edited this page Apr 6, 2018 · 11 revisions

Where we are now:

As of Apr 6, 2018 (Deliverable 5)
  • Website Functionality (before entering VR)

    • The user gains access to the dashboard screen by logging in with a Google account at the top right of the screen before clicking the dashboard button in the center of the screen.
    • If the user account has been granted access to any existing worlds on the firebase server, they will appear here.
    • The user can also create their own world by clicking 'New' at the right of the screen and providing a .CSV file upload, or URL to a .CSV file hosted remotely, and it will appear in the dashboard.
    • Delete existing worlds by clicking the drop-down menu associated with it and selecting 'Delete'. (If the current user does not 'own' the selected world, they are just removed as a collaborator and the world stays in the database).
    • Other users can be invited to collaborate in any existing world owned by the current user by clicking the drop-down menu associated with a world and selecting 'Add User'.
  • VR/3D Functionality

    • Loading a world from the dashboard starts a Three.js scene and prompts the user to 'Enter VR'.
    • Some functionality is available without VR equipment or entering VR by selecting 'Try it without a headset'.
      • Basic keyboard movement controls.
        • 'WASD' : Horizontal movement
        • 'space'/'ctrl' : Vertical movement
      • Mouse point selection and UI interaction.
    • Clicking 'Enter VR' switches the view in the Oculus HMD (Head Mounted Display) from the Oculus home screen, to our virtual world.
    • The user is presented with a 3d point field representation of the dataset associated with that world, with point position X, Y, and Z components proportional to the magnitude of the the 3 columns initially selected upon creation in the dashboard for each row.
    • The user can move freely within their configured 'Guardian' boundaries by physically moving around the room.
    • The user can also move about the virtual space using the joysticks on the hand controls
      • Left joystick: X/Z traversal relative to the direction the user is facing.
      • Right Joystick: Y traversal (vertical).
    • Datapoint selection features:
      • Individual points can be selected by pointing at them with the Right-hand Oculus controller and pressing 'A'.
      • The row entries in currently displayed columns (XYZ) for the selected point are printed to the console.
      • The point about to be selected is indicated when its sprite enlarges 50%
      • Controls:
        • Touch 'A' : display a purple raycaster line for more precise selection
        • Press 'A' : Select/Deselect points
        • Press 'A' + 'X' : Select/deselect ALL points
        • Press 'Right joystick' : invert selection
        • Press 'B' : Hide point
        • Press 'Right Grip' : hide/un-hide the Statistics/Tools-GUI.
    • Statistics Tools
      • Pressing the 'SelectionStats' button on the Tools-GUI updates the statistics readout to reflect the currently selected points, displaying the mean, median, mode, sum, variance, and standard deviation.
    • Other Tools-GUI functions:
      • Point-size slider : Adjusts the scaling of individual point sprites.
      • Data visualization scale slider : Adjusts the scaling of the entire dataset representation.
  • Collaboration

    • Up to 10 users can be present in a world concurrently.
    • Their position is represented by a floating sphere of a random color when they enter the VR space.
    • The currently selected points and displayed axes are shared with all other collaborators in the world upon pressing the 'PushToDB' button on the Tools-GUI.

Clone this wiki locally