natura's odyssey

natura's odyssey

natura's odyssey

A RANDOMISED RIDE EXPERIENCE MADE IN UNREAL ENGINE 5.2

TEAM

Todd Bryant (Instructor)

Harsh Palan

ROLE

UX Designer

Experience Developer

TOOLS

Unreal Engine 5.2

Max MSP

Motion Base Simulator

Luma AI

PROJECT OVERVIEW

Natura's Odyssey is a 30 seat simulation ride with surround sound that takes you on an exciting and interactive journey through the city’s natural and man made landscapes. Developed in Unreal Engine 5.2, users will embark on an unforgettable journey through Natura's wonders, where every ride is a new adventure!

BACKGROUND

Natura's techtopia is usually peaceful however one day, somebody attacked Natura and is messing around with the world. Your job is to take a look at all the places and make sure nobody is left behind!

Natura's techtopia is usually peaceful however one day, somebody attacked Natura and is messing around with the world. Your job is to take a look at all the places and make sure nobody is left behind!

Natura's techtopia is usually peaceful however one day, somebody attacked Natura and is messing around with the world. Your job is to take a look at all the places and make sure nobody is left behind!

THE CONCEPT

The ride is designed to create curiosity and intrigue visitors with every experience, leaving the riders eager to return for more thrilling adventures again and again. There are 3 main aspects to this ride:

The ride is designed to create curiosity and intrigue visitors with every experience, leaving the riders eager to return for more thrilling adventures again and again. There are 3 main aspects to this ride:

RANDOMISED EXPERIENCE

Everything is unique in Natura and therefore your experience on the ride will be too

SIMULATED RIDE

Accessibility Guide

Accessibility Guide

EACH EXPERIENCE IS ~3 MIN

We want you to come back many times! so the rides not too long but it is filled with surprises.

We want you to come back many times! so the rides not too long but it is filled with surprises.

ELEVATOR PITCH

Natura’s Odyssey is a simulation ride that takes you on an exciting and interactive journey through the city’s natural landscapes, where you’ll be tasked with protecting Natura from threats and challenges.


Board the high-tech hovercraft where you will be greeted by Pixel the Cybernetic Puppy and work together with fellow riders to navigate cloud-filled skies, rugged forests, and through the depths of the lake, all while fighting off attackers and obstacles.


With randomized scenarios and challenges, no two rides are the same, ensuring a unique experience every time, or so Nexus the wizard says.


Finally, with a focus on collaboration, innovation, and sustainability, Natura’s Odyssey is an adventure that inspires visitors to take action in protecting the environment and creating a better future for all. Join us on this thrilling ride and embark on Natura’s “unknown” odyssey.

IDEATION

EXPERIENCE TYPES FOR MVP

EXPERIENCE TYPES FOR MVP

EXPERIENCE 1

UNDERWATER

EXPERIENCE 2

FLYING

EXPERIENCE 3

JUNGLE SAFARI

RIDE STRUCTURE

RIDE STRUCTURE

RIDE MECHANICS

RIDE SUMULATOR

SURROUND SOUND

WIND


RIDE MECHANICS

THE EXPERIENCE CHARACTERS

THE EXPERIENCE CHARACTERS

SPARKY: A COMPANION

SPARKY:

A COMPANION

While waiting in the queue, sparky will help you pass your time as the resident helper.



PIXEL: A CYBERNETIC PUPPY

PIXEL:

A CYBERNETIC PUPPY

A loyal guide, that will help onboard you on to the hover craft, helping you throughout the way

NEXUS: A WIZARD

NEXUS:

A WIZARD

He's the mastermind (should we say evil mind) behind all of the things happening in Natura!)

TASK FLOW

TASK FLOW

STORYBOARD

STORYBOARD

PROTOTYPING

Part 1: Physical Prototyping of the Experience

Part 1: Physical Prototyping of the Experience

In this part we created the ride queue experience along with what the ride would look when people entered the experience.

Step 1: Mapping

Step 1: Mapping

We began by laying out all of the possible elements we would need on a large piece of cutting board (hoping it would be okay in scale)

We began by laying out all of the possible elements we would need on a large piece of cutting board (hoping it would be okay in scale)

We began by laying out all of the possible elements we would need on a large piece of cutting board (hoping it would be okay in scale)

Step 2: Creating the Characters and Elements

Step 2: Creating the Characters and Elements

We then moved onto creating our elements to be laser cut and 3D printer (not without atleast 2 failures)

Create a method for displaying error states for users in virtual environments.

Step 3: Building the Prototype

Step 3: Building the Prototype

Finally, with all the queue elements ready, we started assembling them on to our base for the final prototype. Pixel unfortunately didn’t survive :(

Finally, with all the queue elements ready, we started assembling them on to our base for the final prototype. Pixel unfortunately didn’t survive :(

Finally, with all the queue elements ready, we started assembling them on to our base for the final prototype. Pixel unfortunately didn’t survive :(

Step 4: Ride Queue POV Experience

Step 4: Ride Queue POV Experience

Before the visitors enter the ride area they will get a small preview of what the ride is going to be like. e.g. displaying the ride name and some decoration elements that represent the ride.


They will first walk through the queue in an outdoor environment before transitioning to an indoor environment where they will watch some videos about the history of Natura to help them spend the time while waiting in the queue.


As they reach the end of the queue, sparky will greet them and ask them to enter the safety room. After they go through the safety video, they will finally enter the simulation area will they will board the hovercraft where they will finally embark on their unique journey!


Before the visitors enter the ride area they will get a small preview of what the ride is going to be like. e.g. displaying the ride name and some decoration elements that represent the ride.


They will first walk through the queue in an outdoor environment before transitioning to an indoor environment where they will watch some videos about the history of Natura to help them spend the time while waiting in the queue.


As they reach the end of the queue, sparky will greet them and ask them to enter the safety room. After they go through the safety video, they will finally enter the simulation area will they will board the hovercraft where they will finally embark on their unique journey!


Before the visitors enter the ride area they will get a small preview of what the ride is going to be like. e.g. displaying the ride name and some decoration elements that represent the ride.


They will first walk through the queue in an outdoor environment before transitioning to an indoor environment where they will watch some videos about the history of Natura to help them spend the time while waiting in the queue.


As they reach the end of the queue, sparky will greet them and ask them to enter the safety room. After they go through the safety video, they will finally enter the simulation area will they will board the hovercraft where they will finally embark on their unique journey!


Part 2: Prototyping in Unreal Engine 5.2

Part 2: Prototyping in Unreal Engine 5.2

Building the environment with UE5 blueprints and testing out randomisation in the maps

INITIAL ENVIRONMENT DESIGN

INITIAL ENVIRONMENT DESIGN

FINAL ENVIRONMENT DESIGN

FINAL ENVIRONMENT DESIGN

BLUEPRINT (FOR RANDOMISATION)

BLUEPRINT (FOR RANDOMISATION)

MAX PATCH

MAX PATCH

FINAL RIDE PROTOTYPE VERSION 1

FINAL RIDE PROTOTYPE VERSION 1

Scene 1: Underwater

Scene 2: Jungle

Scene 1: Underwater

Scene 2: Jungle

FINAL RIDE PROTOTYPE VERSION 2

FINAL RIDE PROTOTYPE VERSION 2

Scene 1: City

Scene 2: Underwater

Scene 1: City

Scene 2: Underwater

TESTING THE RIDE

TESTING THE RIDE

CONCLUSION & LEARNINGS

CONCLUSION & LEARNINGS

This project helped me understand the elements required to create a ride from start to end from what the ride structure and mechanics are to determining the optial ride capacity and queue management to maximize ride efficiently and finally building the ride in Unreal Engine 5.2 using blueprints and sequencing and testing it on a ride simulator machine with MAX MSP.


The hardest part was figuring out how SVN could update through unreal engine automatically using source control. For the randomisation one solution we came up with is that, we could create 4 different paths, pre-mapped and keyframed. The reason we thought this could be a potential solution is that we can use follow this path in the blueprint: Event BeginPlay → Select Random Path → Load Sequence. Another solution we came up with is using variable seeds (the seed being a sequence) to load/trigger on Event BeginPlay.


Through multiple rounds if trial and error we decided the. second solution was the best way to proceed ahead, however one thing we couldn't figure out is how to avoid playing the same sequence twice even if in the code we had specified that shouldn't happen by specifying if played once, don't play again but this didn't end up working and is something to work on for the future along with introducing more worlds for the rides.

This project helped me understand the elements required to create a ride from start to end from what the ride structure and mechanics are to determining the optial ride capacity and queue management to maximize ride efficiently and finally building the ride in Unreal Engine 5.2 using blueprints and sequencing and testing it on a ride simulator machine with MAX MSP.


The hardest part was figuring out how SVN could update through unreal engine automatically using source control. For the randomisation one solution we came up with is that, we could create 4 different paths, pre-mapped and keyframed. The reason we thought this could be a potential solution is that we can use follow this path in the blueprint: Event BeginPlay → Select Random Path → Load Sequence. Another solution we came up with is using variable seeds (the seed being a sequence) to load/trigger on Event BeginPlay.


Through multiple rounds if trial and error we decided the. second solution was the best way to proceed ahead, however one thing we couldn't figure out is how to avoid playing the same sequence twice even if in the code we had specified that shouldn't happen by specifying if played once, don't play again but this didn't end up working and is something to work on for the future along with introducing more worlds for the rides.

MORE PROJECTS LIKE THIS

MORE PROJECTS LIKE THIS

You've come to the end of my design journey! If you need any additional information or just want to say hello, don’t hesitate to reach out!

FROM COLLABORATIONS TO COFFEE, IT IS ALWAYS A PLEASURE TO CONNECT WITH FELLOW DESIGNERS AND DEVELOPERS.

You've come to the end of my design journey! If you need any additional information or just want to say hello, don’t hesitate to reach out!

FROM COLLABORATIONS TO COFFEE, IT IS ALWAYS A PLEASURE TO CONNECT WITH FELLOW DESIGNERS AND DEVELOPERS.

You've come to the end of my design journey! If you need any additional information or just want to say hello, don’t hesitate to reach out!

FROM COLLABORATIONS TO COFFEE, IT IS ALWAYS A PLEASURE TO CONNECT WITH FELLOW DESIGNERS AND DEVELOPERS.

©2024 | Yesha Shah