Description
The Rowing Recruitment Virtual Reality experience is crafted to offer prospective recruits an immersive glimpse into the vibrant UM Rowing community. Developed in collaboration with the UM Rowing Coaching Staff, this experience serves as a window into the unparalleled resources and advantages of joining the 'Cane family.
Central to the experience is a digital replica of UM Rowing's esteemed training facility, The Church, meticulously recreated to provide an authentic virtual environment. Within this digital realm, recruits can engage with interactive information panels offering detailed insights into various aspects of the facility. Some panels even offer the option to teleport directly to the corresponding location, enhancing the sense of exploration and discovery.
Stepping outside The Church, recruits are greeted with a platform and podium showcasing highlight videos highlighting the campus, the vibrant city life, and the accomplishments of other UM athletics teams. It's a dynamic and engaging journey designed to capture the essence of what it means to be a part of the UM Rowing community.
This project is work built upon the "Rowing Facility Digital Twin" project (link to documentation).
User Experience 
In crafting an immersive user experience aimed at persuading UM Rowing recruits to commit to Miami, the incorporation of a narrator guides the recruit through a showcase highlighting the university's resources, the city's beauty, and the practice location's allure. After conducting user testing, the addition of a "start" button was implemented to allow recruits to initiate the experience at their own pace, ensuring a seamless transition and optimal comfort upon donning the headset. To maintain brevity, only the most compelling snippets from the highlight video were utilized, optimizing the impact of the presentation. Furthermore, to address potential motion sickness concerns, teleportation functionality was integrated, catering to varying user preferences and enhancing overall engagement and accessibility.
GOALS
1. Improve Lighting & UI/UX
2. Add outside platform to showcase Highlight Videos
3. Add tours of South Beach Practice Course, Strength & Conditioning Facility, and Nutrition Center
Lighting & UX/UI

Covered Crosses

Info Button Follows Viewer

More: Info Button Hover Animation, Main Information Panel and Audio does not reappear upon teleport back to the church.
Outside Platform & UM Highlight Videos
Features:
1. Church and platform disappear for optimal viewing and reappear upon exit button press.
2. Button animation and sound upon press.
3. Video Progress Bar
4. Colliders around the platform so that the user can not fall off.

Full Demo + Church and Platform Disappear/Reappear

Button Animation & Sound

Video Progress Bar

Colliders to prevent user from falling off platform

University of Miami 360° Highlight Videos Included (accessed by buttons on platform)
Location Tours
Strength and Conditioning Center
Rowing Practice on South Beach
Nutrition Center
Scripts & Functionality
1. Introduction Scene Logic
Used to control the flow of game entry and UI of the Introduction Scene. Upon "start" button press, the UM Logo fades in and audio starts to play. I utilized coroutines to ensure proper timing of the events. The "begin" button pops up after a few seconds. Upon its press, the scene changes to the Church using the Scene Changer script.
2. Scene Changer
A simple script attached to an empty GameObject in every scene. Function is called through unity events in other game objects.
3. UI Panels
There are four different variations of this script: StartingCanvasScript, MiddleCanvasScript, EndCanvasScript, and SingleCanvasScript. For the UI flow of the Main Information Panel (the one that pops up upon entry of the Church), I utilized the Starting, Middle, and End Canvas Scripts to control the panel changes, audio output, and canvas exit. Each script has slightly different variables associated with it depending on the needs of the specific instance. For example, the starting canvas would not have a "previous canvas", the ending canvas would not have a "next canvas", and the middle canvas would have both.
4. Platform Buttons
The Platform Buttons Script controls the collisions between the player and the button, button animation, button sound output, and function of the videoplayer. The same script is attached to every button. I made sure that the buttons would only be activated if a gameobj with the "player" tag collided with it. I also added logic to make sure that the video would not start from the beginning again if the same button was hit twice. This script also controls the gameobjs that are hidden or activated at the time the videoplayer is turned on (the church is hidden and the guardrails are activated when the videos are playing).
5. Video Player
The Video Player Script controls the progress bar so that it corresponds with the time of the video being played. I modified the original version downloaded from Oxmund Tech (link).
Personal Reflection
This project is the largest VR experience I have developed, and it has taught me more about how to design for more efficiency in development. I learned the importance of creating prefabs and the instances to do so. I learned how to implement and the limitations with 360° media when developing in Unity. I practiced valuable skills in UI design and audio implementation. 
There were several large challenges that I faced within my development process:
1. 360° Videos - I was unable to build an apk with such large file sizes within my project. In the future, I will implement the Vimeo API so that I am able to stream the videos rather than have them downloaded into the project itself.
2. Button Interaction using the XR Simulator - Because I was not able to build an apk, I was unable to show how the buttons could be interacted with through collision with the player’s hand/controller. Instead, I used another object to collide it with the buttons (i.e. the cube in the demo videos). After I am able to build an apk, I will ensure that the buttons work with the hand/controller collisions.
3. Triangle Count of Ergs - I bought the 3D model of the Concept 2 Erg machines on SketchFab. Unfortunately, the triangle count is in the 100k-200k range meaning I could only put a few into my scene (recommended total triangle count is <1 million for Meta Quest 2s). In the original digital twin experience, I populated the scene with flat images of ergs to more accurately represent the number of machines within the facility. I ultimately decided to remove the images because they did not fit within the aesthetic of the scene.
4. Video Player Scrubbar - I spent a large amount of time trying to get the video scrubbar to work so that you can skip through the video as you please. The script I was trying to modify was intended for a 2D scene, so I had trouble adapting it to my 3D scene. I got the representation of the time point in the video to work, but unfortunately was unable to get the seek function to work.
Next Steps:
My next steps are to implement the Vimeo video streaming, then conduct user testing with the rowing athletes. I look forward to the impact this project will have on the future of UM Women's Rowing.
Back to Top