Inspiration

As novices in VR development, keeping our scope small was really important to our team. We wanted to challenge ourselves and learn but also set a realistic goal by limiting our experience to a single space. But what could we do with a single room? "What about an escape room?" The comment was almost offhand but offered a fair amount of challenges while providing a clear goal.

What it does

Drats! You wake up in a room unsure of how you got there. There is a door but it has three locks! (Kinda overkill huh?) The goal is simple, find the three keys, unlock the locks, and open the door. But be careful, some tricky devs have included some fake keys! Through trial, error, and lots of throwing, find out which three keys will set you free! ...Or will they?

How we built it

Through a lot of trial and error (haha, get it?). Our 3D models (disregarding the controller models) we all made from scratch in Maya. The room was built and developed in Unity.

Challenges we ran into

As neither of us had experience developing for the Vive (or any VR systems actually) and limited experience in Unity this was the cause of our greatest struggles.

1) Colliders vs Triggers: Who knew locks and keys would cause so much trouble? Setting up objects to be picked up was simple compared to this. Initially, we used an OnCollisionEnter event to see if the key was pressed against the lock. This worked!...Only if you dropped or threw the key at the lock. Our problem was we were relying on colliders when in actuality we needed to simply turn the locks into a trigger object and change to an OnTriggerEnter event for this to work.

2) Textures: Oh the joys of Maya. Having never worked with texturing in Maya, this proved to be difficult, too difficult for our timeframe it turned out. Luckily Unity had our backs and a materials system we could dive right into.

3) The Playspace: Ugh...just getting the playspace to work.

4) Wonky Controllers: Solving problem 1 ironically only created more problems. While we successfully destroyed the correct lock and key objects, it seemed that we were simultaneously disabling our hand controllers. After many trial runs and hours of code review, we found the problem was because while we destroyed the correct objects, we never told our controllers that our hands could grab new objects. We detached the objects through the script and successfully employed our destruction plans after that.

Accomplishments that we're proud of

Our team's core goal was to join this Hackathon, learn about VR development, and come out with a completed project. It was hard and frustrating, but we did it and couldn't be happier. Our idea was a simple room with a few visuals and little interactivity. We were able to make this and learn about materials, and animation, and more! We were able to have fun and turn Trial and Error into a humorous experience as well as a labor of love.

What we learned

Development for VR isn't this vast unobtainable thing, with research, work, and dedication it is just like any other project.

  • How to work in Unity
  • How to use Github in relation to Unity
  • How to transfer assets to Unity
  • What the difference between Triggers and Colliders?
  • How to program interactions with currently held objects
  • And so much more!

What's next for Trial and Error

Some finishing? Some polishing? Some expansion? Who knows?!

Assets

Wall Texture: link

Brick Texture: link

Mona Lisa: It's the Mona Lisa...

Log Texture: link

Plank Texture: link

Floor Texture: link

Music (Elevator Ride to Hell by Adam Monroe/Adam Kopcinski): link

Built With

Share this project:

Updates