CONTRIBUTION 1 Literature Review on Existent VR Solutions in Human Robot Collaboration
CONTRIBUTION 2 Unity XR Plugin Framework : Overview + Set Up
CONTRIBUTION 3 Unity XR Plugin Framework: Throw a Ball (4.2)
CONTRIBUTION 4 Unity XR Plugin Framework: UI System / Keyboard Interface
CONTRIBUTION 5 Unity XR SDK vs Oculus SDK (OVR)
CONTRIBUTION 6 Tutorial on synchronizing objects across states using Normcore
CONTRIBUTION 7 Review on Normcore as a package for multi-user apps
CONTRIBUTION 8 How to Host Networked-Aframe on a Server
CONTRIBUTION 9 Adding an AR spectator view to a Normcore Unity XR App
CONTRIBUTION 10 Tutorial on creating a VR drawing app in Unity
.....
CONTRIBUTION N [short description] <ADD LINK>
Journal activities are explicitly and clearly related to course deliverables - 4
deliverables are described and attributed in wiki - 4
report states total amount of time - 5
total time is appropriate - 4
Journal activities are explicitly and clearly related to course deliverables - 5
deliverables are described and attributed in wiki - 4
report states total amount of time - 5
total time is appropriate - 4
Journal activities are explicitly and clearly related to course deliverables - 4
deliverables are described and attributed in wiki - 5
report states total amount of time - 5
total time is appropriate - 4
Total: 144 hours
1/30/22 - 4-5 Hours total
9 separate changes to last year's wiki (0.5 -1 hr):
Three changes should each require ~10 minutes to complete.
Adding a course schedule
Making the website edits into suggestions rather direct edits
Adding a tutorial to using Google sites (there's a lot of information on the website that I'm worried about accidentally deleting)
Three changes should each require ~1 hour to complete.
Adding a guideline to submitting edits/contributing to the wiki + adding a guideline on using slack (the purpose of each channel and the use of threads, etc.) in the course page
Implementing a navigation bar or "table of content" like element for pages including VR Development Software, data type and examples, course timeline, collaborative vr resources, etc.
Separating out the course home page from the wiki - it was a little hard to find the course-related content on the website without looking through the sidebar
The final three changes should each require ~10 hours to complete.
Adding an ethical VR+ accessibility section to the wiki
Adding more sections to Applications of VR, such as its use in retail, education, real estate, manufacturing, robotics, etc.
Adding a VR hardware/software comparison section or review
Executed 10-minute changes:
Here's a list of tutorials for using Google sites
As a proof of concept, I've also embedded the calendar with Holidays in the U.S. below
Reading (0.5-1 hour)
History of VR: the Sensorama: In 1962, an American cinematographer built a prototype of his immersive, multi-sensory, mechanical multimodal theater called the Sensorama. It looks like a big vintage arcade machine where users can stick their head into a box and experience of being a part of a film. It sounds a little like 3D movies, and drawing inspiration from 4D movies, which incorporate special features like a motion-sensored chair, drops of rain, and the scent of fresh oven-baked cookies, I'm wondering if VR can also create a more immersive experience for users by activating other senses like touch and smell.
Virtual Reality Has an Accessibility Problem: Although VR is often touted as a democratizing way to access new worlds and experiences, "many of those with limited mobility can’t experience VR without assistance, and even with a headset on, many can’t make the head or body movements necessary to get the full experience. The problem isn’t limited to those with physical impairments; conditions like autism and anxiety can also make using VR difficult or even harmful." Additionally, VR can often be incompatible with assistive technology and exclusive to people with disabilities.
Can Virtual Reality Make You More Empathetic?: With the ability of immersing users in the world of a refugee camp or the journey of becoming homelessness, VR is praised as the "empathy machine." At Stanford, the virtual human interaction lab curated a VR experience that puts the user in the shoes of someone who is facing an eviction to encourage people to act more charitably. While I understand the intentions of the creators, something about using VR to generate empathy just seems wrong. It's almost manipulative and somewhat alike trauma porn. How is this really different from the digital media centered on the exploitation of the pain and suffering of marginalized groups? In fact, the intentions of the creators may backfire by reinforcing existent stereotypes around these groups.
Virtual Reality Is Sexist: But It Does Not Have to Be: Women are more likely to suffer from motion sickness caused by VR than men, reinforcing the gender gap. "As more females were unable to properly fit their IPD to currently available VR headsets, and any IPD non-fit experienced was more extreme in females than males, VR technology was indeed found to be sexist, but it does not have to be. If VR headset manufacturers implement an IPD adjustable range of ~ 50 to 77 mm to capture >99% of both females and males, it is anticipated that a far greater number of females will be able to harness the performance enhancing potential of VR technology."
VR software (2-2.5 hours)
installed and explored Unity, completed parts of the Unity Essential Tutorial
created microgame using template
learned to create and manipulate scenes and game objects
implemented basics physics for game objects
integrated C# scripts into the creation of a game object
Project ideas (0.5-1 hour)
Collaborate with the RISD Museum to create VR guide for artwork
Create VR tour guide for memorials or architectural structures
Work with educational organizations to create VR learning material to enhance student understanding in subjects like physics where visualizations are helpful
Create NFT VR gallery in a physical space with empty art frames
Problems/Bugs (0.5 hrs)
my page failed to save so I had to redo everything I had done. Google sites seems to save my progress very slowly for some reason.
2/3/22 - 3-3.5 Hours total
Set up Oculus headset (0.5 hr)
Played around with Oculus to get acquainted (1.5 hr)
Google Earth activity (as shown below, from left to right: my current dorm, my childhood house, my best friend's old apartment)
Brainstormed project ideas (1 hr):
visualizing gerrymandering (geographic data) - users can play the role of map makers
visualizing historical events in a timeline (inspired by NASDQ), like the Atlantic slave trade
research accessible design for VR (control panel for color changes, captions, other accessibility support) + human factors (cognitive load)
visualizing climate change (ocean currents, wild fire spreads, deforestation, animal extinctions)
visualizing memories + research into emotional connection
modeling traffic flows in cities (people can remove highways + change road connections)
2/8/22 - 3-3.5 Hours total
Brainstormed project ideas (1hr)
modeling traffic flows in cities
Software: ArcGIS City Engine
3 things I will do during the project: visualize traffic flow, map traffic data onto an architectural model of a city, evaluate the performance of ArcGIS City Engine
In-class activities: users can see traffic flow of cars on streets
reach: they can remove highways and alter road connections to simulate traffic flow
Deliverables: added section in wiki on the advantages of visualizing traffic flow with VR; users can see the traffic flow of cars on streets, with trajectories mapped onto a 3D model of the city
research the use of VR in human robot collaboration
Software: Unity
3 things I will do during the project: conduct literature review of existent VR applications in HRC, convert a unity model into VR and add interactive components, and explore VR unity models
In-class activities: users are able to see the robotic arm move to pick up the object and move the target object
Deliverables: added section in the wiki on the applications of VR in HRC, convert existent Unity robot model into VR project, visualize the robotic arm in motion of picking/placing an object, configure objects for basic grabbable interactivity in VR
visualizing gerrymandering
3 things I will do during the project: find gerrymandering data (congressional seats breakdown by state and party, current party representation of congressional districts as an illustration of packing, party control of state legislatures) and visualize it on a map of the U.S., provide users the option to toggle between different datasets
In-class activities: users can see the changes in congressional seats for each state on a map of the U.S.
reach: users can redraw the congressional districts and see the party representation of the district reflecting the changes
Deliverables: a map visualization with municipal units that's split by districting plans and users can toggle the dataset to visualize on top of this map, from the party representation of the unit to demographics breakdown.
Completed modules within Unity tutorial/course on Create with VR (1 - 1.5hr)
Learned to set up VR project in Unity
see video of the project here (https://drive.google.com/file/d/1meyO-548YtSphvUH_ap7NQ5WhaMscXqi/view?usp=sharing )
Set up DinoVR project (0.5 - 1hr)
2/15/22 - 2.5- 3 Hours total
Read about Kristi Potter and brainstormed questions (0.5hr)
Finished project planning and created presentation (1 hr)
Created timeline for Project 1, with deliverables and in-class activities, and contributions to Wiki
Researched existent AR/VR solutions in HRC (1.5-2hr)
2/17/22 - 4- 4.5 Hours total
Created wiki page under the applications of VR and began compile a list of resources (0.5-1hr)
Loaded the robotic arm project in Unity and became familiar with the interface (0.5-1hr)
Had to debug because of missing references and files + improper project setup
Continued working through VR tutorial on Unity (2-2.5 hr)
1.2 - VR Locomotion
Added snap turning functionality
Created Teleportation Anchors on mats
2/24/22 - 3.5 - 4 Hours total
Read literature reviews and contributed to the wiki (1.5 - 2.5 hr)
created structural organization
Tested inputting coordinates to position the target object (1 - 1.5hr)
documented bugs
Experimented with existent projects on VR robot control (0.5-1hr)
see video of me interacting with the robot: https://drive.google.com/file/d/1eENWyGzM857tfyQG6e8A9T1GUeXAm84O/view?usp=sharing
3/1/22 - 4 - 4.5 Hours total
Converted unity 3D model into VR (3 - 3.5 hr)
set up the project with Unity XR Plugin Framework
had to resolve discrepancy between versions / feature changes
Prepared slideshow for project updates (0.5 hr)
3/3/22 - 4.5 - 5 Hours total
Continued configuring model into VR (1.5 - 2hr)
adjusted camera control such that objects do not move along with the user's locomotion
Continued reading literature reviews and contributing to the wiki (1.5 - 2hr)
Continued working through VR tutorial on Unity (1 hr)
1.3 - Grabbable Objects
see video of me picking up and throwing a cricket ball (https://drive.google.com/file/d/1acWRTNa3StsSloi46ddVCmmbcIRuVsJs/view?usp=sharing)
3/8/22 - 4 - 5.5 Hours total
Prepped for Lucia's in class activity (0.5 hr)
Added user locomotion via controllers such that users can move and rotate using their joysticks (1.5 - 2 hr)
Made target object grabbable such that the robotic arm would follow and track the target (2- 2.5hr)
had to wrap the target coordinates with a sphere
then wrote scripts for tracking the sphere as a target object
3/10/22 - 5 - 5.5 Hours total
Prepped for Mandy's in class activity (0.5 hr)
Prepped for Tongyu's in class activity (0.5 hr)
Debugged the input UI for moving and generating target objects at specific coordinates and saving those points (2.5-3 hr)
handled edge cases, such as when the list of points saved is empty
converted input fields to TextMeshPro to be XR compatible (1 - 1.5 hr)
3/15/22 - 6- 6.5 Hours total
Continued debugging the input UI for moving and generating target objects at specific coordinates (2-2.5hr)
ensuring that reset works properly and all coordinates saved are visualized
Added user interaction to the input UI system (2.5-3hr)
debugged by replacing the old input module in the event system with the XR interaction module
Researched existent keyboard assets (1.5 - 2hr)
attempted importing free keyboard assets and using OVR built in keyboard but to no avail
3/17/22 - 7.5 - 8 Hours total
Implemented my own keyboard using UI Canvas (4 hrs)
wrote script for keyboard interaction
Created final presentation for Project 1 (1 hr)
Continued making wiki contributions (3.5 - 4 hrs)
Page on existent VR Solutions in Human Robot Collaboration
Section on Unity XR SDK vs Oculus SDK (OVR)
Tutorial on Unity XR Plug in framework setup
3/22/22 - 4 - 4.5 Hours total
Continued making wiki contributions (3 - 3.5 hrs)
Tutorial on Unity XR Plugin Framework: Throw a Ball (4.2)
Tutorial on Unity XR Plugin Framework: UI System / Keyboard Interface
Updated final presentation with video recordings + wiki contributions
Read the Seven Scenarios Paper (0.5 - 1 hr)
interested in how VR drawing tools can support effective and efficient collaborative data analysis, and support/stimulate group analysis and sensemaking
3/24/22 - 3.5- 4 Hours total
Brainstormed ideas for Project 2 (0.5 - 1hr)
Finalized project ideas and decided on deliverables (0.5 - 1 hr)
Created project 2 proposal presentation (0.5 - 1 hr)
Incorporated in-class feedback and updated project 2 proposal (0.5-1hr)
3/29/22 - 0 Hours total
Spring Break
3/31/22 - 0 Hours total
Spring Break
4/5/22 - 4 - 4.5 Hours total
Wrote the revised final project plan in journal (0.5 hr)
Prepped for Aakansha's in-class activity (0.5-1hr)
Prepped for Nick's in-class activity (0.5-1hr)
Tested my in-class activity to ensure everything ran smoothly and as expected (0.5-1hr)
Experimented with and researched A-Frame (0.5 - 1hr)
4/7/22 - 4.5-5 Hours total
Experimented with and researched both TiltBrush (0.5 - 1 hr)
Seems like A-Painter has better ongoing support than Tiltbrush
Tiltbrush currently runs on Unity 2018 version
Read the documentation + watched tutorial on setting up Tiltbrush (1 hr)
Considered and researched the possibility of building Tiltbrush from scratch (1.5 - 2 hr)
Watched some tutorials on drawing interactable objects in VR using Unity
Tried converting TiltBrush from 2018 to 2021 editor version (0.5 - 1 hr)
4/12/22 - 4 - 5 Hours total
Fixed journal so that it is ready to review in class -- no missing links, hours up to date, etc. (0.5 hr)
Ran into issues with SteamVR trying to convert TiltBrush from 2018 to 2021 editor version (1 - 1.5hr)
SteamVR is no longer supporting MacOS
Looked into multiplayer integration to A-Frame (1 hr)
researched Socket.IO and WebRTC
researched networked-aframe + read documentation
Set up a A-Frame scene in glitch following a tutorial (1 - 1.5 hr)
4/14/22 - 4 - 5 Hours total
Tried adding multiplayer integration to A-Frame with the networked-aframe package (1.5 - 2hr)
Worked on setting up a networked-aframe scene and deploying it with Heroku (1 - 1.5 hr)
Watches tutorials on creating A-Frame scenes ( 0.5 - 1 hr)
Familiarized myself with A-Painter code base (0.5 - 1 hr)
4/19/22 - 4.5 - 5.5 Hours total
Created progress report for project 2 (0.5 - 1 hr)
Continued working on adding multiplayer integration to A-Frame with the networked-aframe package (1 - 1.5 hr)
Tried debugging the lack of correspondence between the relative position of the user and the positions of the avatars (1 hr)
Worked on deploying A-Painter with Heroku (1 - 1.5 hr)
4/21/22 - 3.5 - 4.5 Hours total
Prepped for Mandy's in-class activity (0.5hr)
Prepped for Amanda Levy's in-class activity (0.5hr)
Continued trying to debug A-Painter deployment issues with Ross's help (1.5 - 2 hr)
Researched other options to implement 3D drawing in VR (1hr)
Watched tutorials on drawing interactable objects in VR using Unity
4/26/22 - 4 - 5 Hours total
Prepped for Sayan's in-class activity (0.5 hr)
Prepped for Tongyu's in-class activity (0.5 hr)
Created Unity project to build a multiplayer drawing app (1.5 - 2 hr)
Added VR set up for Oculus in Unity
Created brush stroke objects
Looked into Normcore to add multiuser functionality and familiarize myself with the RealTime Objects (1 - 1.5 hr)
4/28/22 - 8 - 9 Hours total
Prepped for Shashidhar's in-class activity (0.5 hr)
Prepped for Aakansha's in-class activity (0.5 hr)
Prepped for Lucia's in-class activity (0.5 hr)
Continued working on multiplayer drawing app in Unity (4 - 5 hr)
Added input system to implement user interaction with brush stroke
Wrote scripts to start drawing when user presses the trigger on the controller
Debugged input system due to version discrepancy
Set up Normcore in the Unity app to create a multiplayer experience (2 - 2.5 hr)
5/3/22 - 9.5 - 10.5 Hours total
Prepped for Beatrice's in-class activity (0.5 hr)
Prepped for Robert's in-class activity (0.5 hr)
Prepped for Maia's in-class activity (0.5 hr)
Wrote scripts to add eraser functionality (1 - 1.5 hr)
Wrote scripts to implement pictionary logic (3 - 3.5 hr)
Added crayon object to designate drawer + customize their view (2 - 2.5 hr)
Synced crayon object in realtime for multiple users (2 - 2.5 hr)
5/5/22 - 6.5 - 7.5 Hours total
Prepped for Paul's in-class activity (0.5 hr)
Wrote scripts to generate random prompts (1 - 1.5 hr)
Created wiki page with instructions for my in-class activity (0.5 - 1 hr)
Tested my in-class activity with multiple users to ensure everything ran smoothly and as expected (1-1.5 hr)
Debugged the app to make sure that guessers cannot see the prompt for the drawer and that a new prompt appears for every new drawer (1.5-2 hr)
Created AR spectator view for pictionary game in VR (2 - 2.5 hr)
Converted and built app in iOS on Xcode (1 - 1.5 hr)
5/10/22 - 4 - 5 Hours total
Created final project 2 presentation (1hr)
Created flashtalk slides (0.5 hr)
Brainstormed + finalized focus for full-semester presentation (0.5 - 1 hr)
Added wiki contributions #6-7 (2 hr)
5/19/22 - 8 - 9 Hours total
Made final poster (3 - 4 hr)
Edited flashtalk slide (0.5 - 1hr)
Added wiki contributions #8-10 (3 - 4 hr)
Finalized journal to include updates + accurate count of hours (0.5 - 1 hr)
test-runned demo (0.5 hr)