This page serves to explore the final, delivered product, including all of the features that it encompasses. Although a live demonstration would be ideal, due to some of the audio/visual components of virtual reality, a live demonstration is not quite feasible. Thus, short video clips were produced that demonstrate each individual feature. Below is a brief description of the completed feature, followed by a video that exhibits that particular feature, in action.
Each video will be a recording of what is actually seen by the user in virtual reality as the primary focus. In the bottom right corner of the screen, the viewer will be able to see the motions and physical gestures of the tester using the program, perfectly aligned overlayed with the video of the virtual environment. This will create a scene that will make it explicitly clear what is occurring in the project, for the viewer.
Menu Navigation
This demonstration provides a brief walk through of the project, from the starting scene to the end. It does not demonstrate any of the capabilities for graphical manipulation (as that will be shown in following demos), but it does demonstrate what the user will see and their "flow" through the program.
Demonstration Walk Through and Items to Note:
Military Equipment Selection Scene:
Parameters Selection Scene:
Dates of Testing Selection Scene:
Each video will be a recording of what is actually seen by the user in virtual reality as the primary focus. In the bottom right corner of the screen, the viewer will be able to see the motions and physical gestures of the tester using the program, perfectly aligned overlayed with the video of the virtual environment. This will create a scene that will make it explicitly clear what is occurring in the project, for the viewer.
Menu Navigation
This demonstration provides a brief walk through of the project, from the starting scene to the end. It does not demonstrate any of the capabilities for graphical manipulation (as that will be shown in following demos), but it does demonstrate what the user will see and their "flow" through the program.
Demonstration Walk Through and Items to Note:
- The users hands are represented in the virtual world as two spheres:
- If the user's hands are open, the spheres are blue
- If the user's hands are closed, the spheres become yellow
Military Equipment Selection Scene:
- The user can see the 3 iconic data representations (the tank, the aircraft, and the missile), slowly rotating on the table (a user interface technique used to entice the user to interact with them)
- When a user hovers their hand over an icon, a spotlight shines on their selected icon, it begins to rotate at a faster rate, and all other icons stop rotating
- To make a selection, the user must close their hand, essentially "grabbing" the object they want to select
- The user must keep their hand closed and on the icon of their choice for a certain amount of time. This prevents the user from accidentally closing their hand over an icon and instantly being taken to that selection. This delay time can easily be altered in the code
Parameters Selection Scene:
- The user is required to select one and only one equipment model type, as well as one and only one test type
- If the user hovers their hand over a button, it becomes green (an aspect of user interface responsiveness that makes it clear to the user which button they are about to select)
- To make a selection, the user must close their hand on the button for the previously mentioned amount of delay time
- Once a button becomes selected, its color changes to yellow
- Attempting to select an equipment model type or a test type after one has been selected previously results in the initial selection becoming deselected
- Once both required parameters are selected, the previously disabled "Submit" button becomes enabled, allowing the user to progress to the next scene
Dates of Testing Selection Scene:
- The user views a GUI wherein all of the selections will be various dates of testing
- In a "true" run, these values will be dates. However, for this demonstration without real data, the dates are represented as simple integer values
- If the user hovers their hand over a button, it becomes green (an aspect of user interface responsiveness that makes it clear to the user which button they are about to select)
- To make a selection, the user must close their hand on the button for the previously mentioned amount of delay time
- Once a selection is made, the user is taken to the Graphing Scene, wherein their desired data is viewed
Menu Navigation Demonstration Video
Y-Axis Scaling
This demonstration shows one feature of the final product - the ability to scale the Y-Axis maximum value up or down. It is the first produced feature of the project, and serves to be the first milestone in integrating the motion controls with the graphical manipulation.
Demonstration Walk Through and Items to Note:
Tips For Using This Feature Most Effectively:
This demonstration shows one feature of the final product - the ability to scale the Y-Axis maximum value up or down. It is the first produced feature of the project, and serves to be the first milestone in integrating the motion controls with the graphical manipulation.
Demonstration Walk Through and Items to Note:
- In the top left corner is a (nearly transparent) Y-Scale button
- To activate Y-Axis scaling, the user hovers their left hand over the Y-Scale button and closes their hand. Their left hand must remain both closed and in the confines of this button during all Y-Axis scaling. If their hand opens or leaves the button, Y-Axis scaling is ended
- When Y-Axis scaling is active, the button's color changes to yellow
- Wherever the user's right hand is at the instant the user grabs the Y-Scale button acts as the point of origin
- To increase the Y-Axis's maximum value, the user must raise their right hand above the point of origin
- To decrease the Y-Axis's maximum value, the user must lower their right hand below the point of origin
- The Y-Axis maximum value is displayed next to the user's hand sphere as white text, allowing the user to change the maximum value to an exact desired value
- Only vertical motion is taken into account when scaling the Y-Axis. Any horizontal motion will be ignored and will not affect the scaling of the Y-Axis
- The user is now able to shrink or expand the graph, vertically, based on how they set the maximum Y-Axis value
Tips For Using This Feature Most Effectively:
- Because the Y-Axis is scaled based on how far up/down the user moves their hand from the point of origin, when it is known that a great deal of scaling will be done, it is best to do large, sweeping motions
- This means that if the user wants to greatly increase the Y-Axis maximum value, they should place their right hand as low as possible before "grabbing" the Y-Scale button, and then perform one large stroke upwards
- Additionally, if the user wants to greatly decrease the Y-Axis maximum value, they should place their right hand as high as possible before "grabbing" the Y-Scale button, and then perform one large stroke downwards
- If the user performs a motion but requires more scaling, still, the most effective method is for the user to open their left hand (but keeping it in the same position), move their right hand to the most efficient position (see the tip, above), and then closing their left hand once again. This effectively resets the point of origin, without the user needing to ever move their left hand.
Y-Scale Demonstration Video
X-Axis Scaling
This demonstration shows a secondary feature of the final product - the ability to scale the X-Axis maximum value to a larger or smaller value.
Demonstration Walk Through and Items to Note:
Tips For Using This Feature Most Effectively:
This demonstration shows a secondary feature of the final product - the ability to scale the X-Axis maximum value to a larger or smaller value.
Demonstration Walk Through and Items to Note:
- All aspects of the X-Scale Button operate exactly as the above mentioned Y-Scale button. This includes initial transparency, how to use, and the change in color when selected.
- To increase the X-Axis's maximum value, the user must move their right hand to the right of the point of origin
- To decrease the X-Axis's maximum value, the user must lower their right hand to the left of the point of origin
- The X-Axis maximum value is displayed above the user's hand sphere as white text, allowing the user to change the maximum value to an exact desired value
- Only horizontal motion is taken into account when scaling the X-Axis. Any vertical motion will be ignored and will not affect the scaling of the X-Axis
- The user is now able to shrink or expand the graph, horizontally, based on how they set the maximum X-Axis value
Tips For Using This Feature Most Effectively:
- Because the X-Axis is scaled based on how far right/left the user moves their hand from the point of origin, when it is known that a great deal of scaling will be done, it is best to do large, sweeping motions
- This means that if the user wants to greatly increase the X-Axis maximum value, they should place their right hand as far left as possible before "grabbing" the X-Scale button, and then perform one large stroke to the right
- Additionally, if the user wants to greatly decrease the X-Axis maximum value, they should place their right hand as far right as possible before "grabbing" the X-Scale button, and then perform one large stroke to the left
- If the user performs a motion but requires more scaling, still, the most effective method is for the user to open their left hand (but keeping it in the same position), move their right hand to the most efficient position (see the tip, above), and then closing their left hand once again. This effectively resets the point of origin, without the user needing to ever move their left hand.
X-Scale Demonstration Video
Increase/Decrease Number of Tick Marks
This demonstration exhibits a feature of the project that provides the user with a higher level of customization. If the user would like more precision and accuracy in identifying data points, he or she may increase the number of tick marks on either axes. Conversely, if the user feels too overwhelmed at the abundance of these graphical indicators, they may reduce the number of tick marks, producing a cleaner, less "busy" graph.
Demonstration Walk Through and Items to Note:
Tips For Using This Feature Most Effectively:
This demonstration exhibits a feature of the project that provides the user with a higher level of customization. If the user would like more precision and accuracy in identifying data points, he or she may increase the number of tick marks on either axes. Conversely, if the user feels too overwhelmed at the abundance of these graphical indicators, they may reduce the number of tick marks, producing a cleaner, less "busy" graph.
Demonstration Walk Through and Items to Note:
- The user is able to increase the number of tick marks on either axis by simply grabbing the axis above the 50% threshold
- For the Y-Axis, this entails grabbing the top half of the axis
- For the X-Axis, this entails grabbing the right half of the axis
- The user is able to decrease the number of tick marks on either axis by simply grabbing the axis below the 50% threshold
- For the Y-Axis, this entails grabbing the bottom half of the axis
- For the X-Axis, this entails grabbing the left half of the axis
- Both hands are capable of increasing/decreasing the tick marks on both axes
- Both axes may have their tick mark count incremented/reduced independently
Tips For Using This Feature Most Effectively:
- If the user knows that he or she will be substantially increasing/decreasing the number of tick marks present on an axis, they may place their hand in the correct location and rapidly open and close their hand, repeatedly, until the desired amount of tick marks is reached
- If the user feels that the tick marks are incremented/decremented too slowly or too quickly (the default rate is 60%), this value may be amended in the project's code
Tick Mark Modification Demonstration Video
Reset Graph to Original Configuration
In the event that the user accidentally shrinks the graph too small, over saturates the graph with too many tick marks, or any other occurrence wherein the user would want the graph to be presented as it originally was, they may reset the graph to its original configuration.
Demonstration Walk Through and Items to Note:
In the event that the user accidentally shrinks the graph too small, over saturates the graph with too many tick marks, or any other occurrence wherein the user would want the graph to be presented as it originally was, they may reset the graph to its original configuration.
Demonstration Walk Through and Items to Note:
- To reset the graph to its original configuration, the user simply has to close their hand on the "Reset" button
Graph Reset Demonstration Video