This week was a pivotal week for the development of the AR/VR Environment, as both June and I have completed our respective projects and we have started to research into the Unity Multiplayer Networking methods to essentially combine both of these two components together. One of the reasons for using this Unity Photon Server is that a) it is supported by Unity; b) videos have demonstrated its potential in developing AR and VR multiplayer systems through Unity; and c) It offers a simplified abstraction of the networking interface that June and I have little understanding about.
As June is on her way to UCLA, and I have been trying to understand the Unity Photon server, the Unity backend compiler, as well as the ARCore development, we have not been able to provide any videos showcasing certain updates to our programs. However, in relation to that, we have had a comprehensive discussion with Professor Mehta redefining our deliverables and came to the conclusion that our networking mechanism is not a portable solution, especially because the furniture manipulation has hardware dependencies that do not allow for it to be used in other contexts beyond the Nokia phone and HTC Vive that we are currently testing on.
In response to this issue, we have decided to put aside our development of the Unity server, and working on generalizing our project such that we have an API (application program interface) that is compatible with a number of implementations beyond the HTC Vive and ARCore library. The reason for this is because we may (in future) wish to extend our project to different hardware and software devices, such as leap motion, or VR on mobile, etc. Having this generalized library that is distinct and independent from the hardware itself makes it easier for us to interact with it regardless of its implementation, which is why we have decided to dedicate the remainder of this week towards a documentation of the API.
In context to our timeline, this means that we will push back our user study, as we believe that it does not directly contribute towards the final product, but rather, it only proves to offer concrete evidence that our proof of concept works.
Further details will be provided in regards to the documentation of the API, as well as how our respective AR and VR systems will interact with them.