Zach Dixon journal
Activity Log
5/14 12:00 - 2 PM: Prep for presentations/demos
5/14 1:15-2:15 AM: Final Wiki review, writing final report
5/13 3-9 PM: Attempts at getting WMR and hardware emulation working on older laptop w/ better GPU for demos (mostly unsuccessful)
5/12 5-8 PM: Wiki reading, OpenSpace optimization attempts
5/10 9-11 PM: Site review, begin adding descriptions and linking on Home page.
5/9 5-9 PM: Finally got OpenSpace VR working, but framerate is horrible. Seems CPU bottlenecked, and very early in support.
5/8 4 - 8 PM: OpenSpace recompiling, reconfiguring, and reinstalling
5/4 1 PM - 9 PM: OpenSpace install
5/1-2 10 PM - 1 AM: Presentation prep, site review, vizible troubleshooting (still not really working)
4/30-5/1 11 PM - 3:30 AM: WMR compatibility on non-official hardware (steps added to page), vizible install and troubleshooting
4/24 1-2 AM: Created Windows Mixed Reality HMDs Hardware Page, added to Hardware Compatibility Matrix
4/21 12 - 8 PM : Testing out, debugging Lenovo Explorer (Windows Mixed Reality Headset)
4/18-19 11 PM - 3AM: AR tutorials (unexpected hurdles slowed down progress)
4/16 6:30-8, 10-12 PM Worldviz/Vizard installation / tutorials / testing
4/16 6-6:30 PM: World machine prep, testing
4/11 9:30-10 PM: Journal update, some documentation review
4/11 6-9:30 PM: Lumberyard testing, debugging
4/9 8-12 PM: Lumberyard additional installation, testing VR, following tutorial
4/8 1-2 PM: Looking at VR stuff at PAX East
4/4 10-12: Installing Lumberyard (slow internet)
4/4 6-9 PM: Cryengine VR attempting (failed)
4/1-2 10:00 PM - 2:00 AM: Unity tutorial prep, cryengine tutorials
3/21 4:00 PM - 8:00 PM: Cryengine install / downloads, configuration, tutorials
3/20, 12:45 - 1:00 AM: Reviewed partner's deliverables and my own
3/18 10:00 - 10:15 PM: Wrote up initial impressions of workshop, not sure where to put them, so they're currently at the bottom of this page
3/15 4:00 PM - 8:00 PM: Workshop prep, workshop, workshop cleanup
3/14, 10 PM - 12:30 AM: Deciding, writing up plan, reviewing what others had done/what still needed doing
3/14, 7-9 PM: User study
3/14, 4-6:30 PM: Vive Prep for workshop
3/12, 6-7 PM: Workshop prep
3/8, 12-1 AM: Journal update, review of manuscript and home page. Midterms this week, so some hours will be made up later
3/6, 12-2 AM: Evaluation and report writing
3/5, 5-7 PM: Review of existing tutorials, creation of simple SteamVR null driver tutorial.
3/5, 4-5 PM: Final looking at Immerseum, came to conclusion that the software was not reliable enough to merit inclusion
2/28, 4-6 PM: Continued fiddling with Immerseum VR
2/27, 1-1:30 AM: Prepped visuals for class (surprisingly difficult due to needing to use laptop's webcam)
2/26, 6-7 PM: Helped Ankita and Linda with VR study preparations
2/26, 12-2:30 PM: Immerseum VR initial exploration
2/21, 9-10 PM: SteamVR null driver research/testing
2/21, 6-9 PM: Wrote up tutorials for iVRy and VRidge
2/21, 5-6 PM: Tested, evaluated iVRy for Android, updated evaluation page
2/14, 11-12 PM: Restructed Hardware emulation page, wrote up iOS evaluation
2/14, 8-11 PM: Tested iOS versions of iVRy and Trinus VR, compared w/ Android software
2/12, 9-11 PM: Wrote up progress report and plan, minor research in VR emulation
Discovered Immerseum VR Headset emulation plugin for Unity, needs further research
2/9, 4-7 PM: Unity Tutorials
2/7, 6:00 - 12:00 PM : Further Vridge / Trinus / Gear VR research / troubleshooting
Vridge released 2.0 version, got cardboard working in Gear VR, Windows graphics driver VR interaction troubleshooting
2/6, 10:00 - 10: 30, 12:00 - 12:30: VR demo prep / overflow time
2/2, 5:00 - 6:00 : Prepared for VR demos
1/31, 4:00 - 8:00 : Started learning Unity
Unity time to download/install: 1.5 hours
Unity time for interactive examples: .5 hours
Effective and well presented. Good introduction to avoid being overwhelmed by the interface. I wish they had more.
Unity time for basic example (not VR): 2 hours
TODO: VR examples
1/29, 7:00 - 8:00: Wrote up (preliminary) evaluation of VRidge
1/29, 4:00 -7:00 : Investigated VRidge VR application
Allows you to stream HMD data from a phone to a PC application which integrates with SteamVR
Very useful for testing VR basics
1/29, 3:45 - 4:00 PM: created journal page
Plan 2
15 March
Deliverables
Future plans
On my journal page
Activities
Write up future plans
Value: Will help guide future work
Time: 2 hr
Prep Vives for workshop
Value: Necessary to hold workshop
Time: 2 hr
20 March
Deliverables
Initial conclusions from workshop work
Added to section on interface evaluation
Activities
Hold workshop
Value: Provides user data
Time: 3 hr
Look over workshop data, reach preliminary conclusions
Value: First step towards fully utilizing workshop
Time: 1 hr
22 March
Deliverables
Data on Cryengine, improvements to Cryengine documentation as necessary
Useful as second impression of Cryengine
Activities
Install, configure Cryengine
Value: Second data point for cryengine testing, potentially difficult progress (see Kevin's experience)
Time: 4 hrs
3 April
Deliverables
Data on Cryengine, improvements to Cryengine documentation as necessary
Useful as second impression of Cryengine
Activities
Continue Cryengine testing
Value: Second data point for cryengine testing, potentially difficult progress (see Kevin's experience)
Time: 4 hrs
5 April
Deliverables
Data on Lumberyard
Activities
Install, configure Lumberyard, follow Kevin's Hello World Tutorial
Value: Second data point for Lumberyard
Time: 4 hr
10 April
Deliverables
Finalized impressions of Lumberyard, Cryengine
Activities
Review/edit/update Lumberyard and Cryengine documentation
Value: Completes a section of the site and (if included) the final paper
Time: 1-2 hrs
Any further exploration of Cryengine/Lumberyard as needed
Value: Potentially necessary depending on technical difficulties
Time: 2-3 hrs
12 April
Deliverables
Possibly none, as this might be a buffer week.
Data on WorldViz
Useful as second impression of WorldViz
Activities
Install, configure WorldViz
Value: Second data point for WorldViz testing
Time: 4 hrs
17 April
Deliverables
Data on WorldViz, improvements to WorldViz documentation as necessary
Useful as second impression of WorldViz
Activities
Continue WorldViz testing
Value: Second data point for WorldViz testing
Time: 4 hrs
19 April
Deliverables
WorldViz HelloWorld tutorial
Activities
Write WorldViz HelloWorld tutorial, record estimated time
Value: Data necessary for final comparisons
Time: 4 hrs
24 April
Deliverables
Data on Windows Mixed Reality Hardware
Activities
Install, Configure Windows Mixed Reality Hardware
Value: Impressions of WMR
Time: 4 hrs
26 April
Deliverables
Data on <another undertested software>, potentially a tutorial if necessary
Activities
Continue testing <another undertested software>
Value: Additional datapoint for that software
Time: 4 hrs
Total Hours: 45
Progress Report 2
Time Spent
25 hours
Deliverables
Wrote evaluations of various VR Hardware emulators
Under "Hardware > Hardware Emulation"
Wrote tutorials for using the 3 major hardware emulation methods
Under "Hardware > Hardware Emulation
> iVRy Tutorial"
> vRidge Tutorial"
> null Driver Tutorial"
Activities
Debugged, researched, and optimized various VR hardware emulators
Necessary for evaluation
Useful for assisting in development and research within the scope of the class
Wrote tutorials for 3 hardware emulators
Useful for others in class without easy access to VR hardware
Gained familiarity with Unity
Originally intended for use with Immerseum VR
Also separately relevant and useful for the class
Rubric
Activities are explicitly and clearly related to deliverables
4
Deliverables are described and attributed in wiki or manuscript
4
Items from in-class google sheet of experimental data are in wiki or manuscript
4
Report states total amount of time
4
Total time is appropriate
3
Feedback
It has been difficult to gauge how long individual tasks would take, as unexpected technical issues take unpredictable amounts of time to resolve.
I ended up rejecting the inclusion of the Immerseum VR simulator due to usability issues, technical problems, and concerns about the long term viability of the project itself.
Progress Report
Deliverables
Overview of VR hardware emulation for consumers and developers
Under the Hardware subsection
Activities
VRidge evaluation/debugging/optimization
VRidge seems to be the most comprehensive hardware emulator
Trinus evaluation/debugging/optimization
Trinus performs the same function as Vridge, but is available on both Android and iPhone
Learning Unity
Generally VR related, but also necessary for evaluating the Immersium software headset emulator
Plan
13 February
Deliverables
Progress Report
On my journal page
Activities
Write up progress report and future plans
Value: Will help guide future work
Time: 2.5 hr
Continue learning Unity
Value: Necessary to evaluate unity headset emulation plugin, relevant to VR in general
Time: 1.5 hr
15 February
Deliverables
Cleaner, more organized Hardware Emulation page
Evaluation of iPhone software
Will be added to the Hardware Emulation page
Activities
Borrow an iPhone / work with a classmate with one in testing iPhone apps for emulation
Using iVRy and Trinus (and any others I can find)
Value: Hardware emulation evaluation should be comprehensive
Time: 2 hr (more if unexpected problems arise)
Continue learning Unity
Value: Necessary to evaluate unity headset emulation plugin, relevant to VR in general
Time: 2 hr
22 February
Deliverables
Tutorials for using VR emulation software
Useful for our class in research, probably too much to be included in the final paper
Activities
Write the above tutorials
Value: Students in our class can use this software for development and testing, reducing demand for our limited headsets
Time: 4-5 hrs
Continue learning Unity
Value: Necessary to evaluate unity headset emulation plugin, relevant to VR in general
Time: Whatever time can be spared
27 February
Deliverables
Addition of Immersium VR emulator Unity plugin to the Hardware emulation page
Tutorial for setting up, using Immersium VR emulation plugin
Activities
Immersium evaluation/debugging/write up
Value: Potentially easier than phone-based emulation, and allows for greater capabilities (ex. controllers)
Time: 4 hrs
1 March
Deliverables
Any additional information required/discovered relating to VR hardware emulation
Activities
Gather feedback on VR hardware emulation from peers
Value: Can be used to get a broader view of the usefulness and quality of the software
Time: 4 hrs?
6 March
Deliverables
Finalized integration of Hardware emulation into the Manuscript page, final editing of other related pages/tutorials
Activities
Review/edit all hardware emulation related pages, and finalize their integration into the Manuscript page
Value: Completes a section of the site and (if included) the final paper
Time: 1 hr? (depends on number of pages and number of edits)
Choose next area of focus through research and discussion with classmates, create outline
Value: Necessary for switching to a new focus
Time: 4 hrs
Total Hours: 25
Old notes and findings page. Talk to Zach if you have any questions.
VRidge and Riftcat are connected applications for VR HMD simulation using an android phone. The system streams the device's orientation to a PC running VR software (SteamVR or Oculus). The phone receives streaming video of the HMD rendering, in a side-by-side format. Combined with a Google Cardboard, the phone will act as a VR headset. Additionally, there is support for the Samsung Gear VR headsets, which provide much more accurate head tracking data. The program simulates OpenVR hardware, allowing it to directly interface with the OpenVR API.
Advantages:
Very cheap (free for 10 minutes, $15 for a license) and only requires an android phone
Easy integration with SteamVR. Essentially anything that can run on a Vive or Rift device can be streamed to a phone
Very useful for development testing purposes
Good accuracy for head tracking. Accuracy with a Gear VR is just as good as a full commercial headset
Some android phones, and newer versions of the Gear VR headset support USB tethering, allowing for greatly increased performance.
I couldn't test this, as my Gear VR headset is older.
Supports NOLO trackers/controllers for the full room-scale experience. However, as the NOLO system is $200, it would probably be easier for most consumers to just get one of the Microsoft Mixed Reality HMDs
Disadvantages:
PC/Android only
Tracking and streaming latency issues make it largely impractical for any applications where long-term use or quick reactions are required.
Head tracking is accurate, but the latency can easily induce motion sickness
Bandwidth-dependent. High-bandwidth WiFi is necessary for acceptable streaming quality
Low FPS. Likely due to using built in video decoders on the phone in combination with bandwidth concerns, the streaming framerate is limited to either 30 or 60 fps, when 90 would be preferable to reduce motion sickness and headaches
(Brown Specific) The GearVR version has no option to manually enter an IP address for the host PC, and Brown's firewall blocks the port it uses for discovery, meaning that it can't be used on the Brown network. The regular version can with a manual IP, however.
Conclusions:
Vridge provides a system which is passable for playing certain VR games and, with enough work, provides a potentially acceptable experience for a very low price. Currently, its major advantage is that it provides an incredibly easy test environment for VR development. However, with the prices of full HMDs going down, it is questionable whether it might be easier in the end to get a better experience with a cheaper HMD.
Future Research:
On Android, there are two other apps which perform roughly the same function. KinoVR doesn't seem to be actively maintained any longer, and Trinus VR which doesn't support Gear VR. I plan to look into Trinus as an alternative to Vridge.
Vridge 2.0:
Essentially the same as Vridge 1.0, but with a more friendly interface. Performance seems somewhat better.
Cardboard vs Gear VR:
Cardboard found to be more reliable, probably good enough. It seems to be the larger focus of the product.
Trinus VR:
Same business model as Vridge
Can also arbitrarily stream desktop content
More customizable, but harder to get working
Even when working, performance is at best the same as Vridge, and quality is generally lower.
Gear VR Cardboard support:
Need to install custom application (costs $2) which disables the Gear VR service in the phone.
Need to calibrate cardboard apps w/ Gear qr code
Doesn't use the Gear's sensors, just the headset itself
Future research:
Moonlight streaming (supported by both)
iPhone applications (need to get one)