Nikhil Nandakumar edited Code Architecture.tex  about 10 years ago

Commit id: 0e0b40061974c5da3331e297d964282c36988bb7

deletions | additions      

       

\section{Code Architecture}  The getReal3d plugin for Unity3D which has been built by Mechdyne, enables Unity3D to be run on a cluster of machines Windows systems. This plugin uses Trackd which is another standard device driver software written by mechdyne which utilizes the vicon system to get head tracking information and synchronize the scene depending on where the head of the participant is. This sets up the scene so that a person can navigate and rotate on a 1 to 1 ratio without any gains.   \paragraph \paragraph{}  We have leveraged this system and written C# scripts on top of the plugin using the trackd information to implement the rotational and the transitional gains.To calculate the relative rotation with gain the script calculates the difference between rotation between two frames, multiplys a 1/3rd factor to it and subtracts it from the actual rotation which results in a 2/3rds rotational gain the factor is being adjusted to make it suitable for proper navigation in the CAVE without running into the walls of the CAVE. To calculate the transitional gain again the same process is followed this time multiplying a factor of 250 and adding it to current position which is again being tweeked for better performance and suitable navigation. There are thresholds in place to prevent erroneous values from creating undesired movements in the visual scene.  \paragraph \paragraph{}  An output csv file would be generated in the head node which will supply the real world and virtual world rotation and position with timestamps.This information can then be used to trace the path the participant navigated what he/she was looking at and how off he/she was from where they should be.