Tale of Dragon

Role: Programmer, Designer

Our experience is built using the Oculus Quest Pro and a VR motion chair, synchronized to create a thrilling and realistic ride. The adventure begins with a high-speed roller coaster ride through a beautiful valley, providing an adrenaline-pumping start to your dragon ride.

In the second part of the experience, players have complete control over the dragon’s movements, allowing them to fly freely and shoot fire breath to destroy attacking ships. The VR motion chair will rotate in three axes, matching the exact rotation of the dragon to create a fully immersive experience. This synchronization is designed to increase the immersive feeling and reduce motion sickness with the VR headset, ensuring that you can enjoy the experience without any discomfort.

This unique and exciting experience was showcased during the festival held by the Entertainment Technology Center of Carnegie Mellon University, where it served over 50 guests. It is sure to leave a lasting impression on anyone who tries it.

Playthrough Video

Input Detection

Our VR dragon riding experience is built using the Unity game engine. During the development process, we initially used the point direction of the controller to control the dragon’s flying direction. However, after several rounds of iteration and playtesting, we found that the rotation was too sensitive for smooth control. Additionally, the motion chair would react to the input, making it difficult to maintain control and leading to a shaky effect, particularly when trying to fly up or down.

To address these issues, we decided to switch to using the position of the controller as input instead. We now detect the relative position of the controller and the headset, which has led to a smoother and more responsive experience. This new approach has resulted in a better overall experience for users and has helped to reduce motion sickness and increase immersion.

Motion Matching

In order to synchronize the motion of the motion chair with the dragon’s movements in the game, we explored several solutions. We ultimately decided to bind the chair’s motion to the dragon’s animation.

To accomplish this, we bound the transform of the motion chair to the pivot bone of the dragon, allowing the motion of the chair to be directly synchronized with the dragon’s movements. To enhance the overall experience, we increased the dynamic of the dragon’s flying animation creating a more immersive feeling of riding a dragon. We smooth the animation curve for a more comfortable guest experience.