Overview

Utilizing VR's highly immersive nature, Tranquility Simulator provides players with an escape.

Dropped onto a platform in the middle of a glassy ocean, users are invited to engage with the sandbox around them.

As a dev, TS is a practice in simplicity and immersion with a focus on whiteboxing mechanics.

Contributors

N/a

My Role

Solo Project

Tools
Unity
C#
Solo Development

Sandbox Tools

the Infinite Block Generator:

Inspired by classic sandbox components and everyone's favorite building block

The Time-Piece:

Providing players with the time piece let them customize their environment in a way that maintained immersion while remaining intuitive.

The Bubble Blower:

A simple pleasure, there is just something fun about blowing bubbles into the void.

In addition, you can also pop the bubbles by catching them if you are so inclined.

The Music Box:

Sunset and a song! What could be better.

The music box defaults to white noise and will cycle through a preset list of available music.

I selected this method of music selection instead of a traditional menu to contribute to the more tactile and cohesive feeling of the other intractables.

Looking Back...

  1. I would love to revisit this project - By setting my goal and scope early I was able to complete this project comfortably within expected time. However, if give the chance I would love to revisit the project, build out more functionality, and provide some amount of extra polish.
  2. Shaders, Assets, and Rendering, oh my - One of the largest problems I ran into was with the ocean asset surrounding the platform and spreading out into the distance. Although I was fortunate enough to find such a stunning asset for free, it did run a bit heavy on each update causing it to not always correctly render the nighttime or sunset. To correct this I added buffers in the code for the materials to catch up. If given more time I would have gone into the actual shaders and asset itself but unfortunately I did not own the hardware on which I was running this project and so my starting scope had to be maintained.

Return To Home