A gesture and audio-input based game for the Oculus Rift DK2
- Tiffa Cheng: Artist
- Kirsten Rispin: Sound Designer
- Vivek Vidyasagaran: Programmer
- Adam Liss: Designer / Co-Producer
- Brentt Kasmiskie: Designer / Co-Producer / 3D Artist
My role in the project was as one of the principle designers and Co-producers. While working with the team to make sure everyone had everything they needed and wasn't blocked on tasks our artist brought up a problem that she was more of a 2D artist and we needed 3D assets. I took on the role of 3D asset creation. I created the cave and many of the obstacles which we placed in the cave. I then designed and implemented the level in Unity.
Our goal with Into the Dark was to create an experience where a player would use echolocation to visualize an environment they are attempting to navigate. We originally started development on the EyeGaze, an eye tracker. However, due to difficulties calibrating the platform and discomfort during play we switched to an Oculus DK2. At the time, most of the VR experiences we had seen were fairly stationary, generally meant to be played sitting, or standing still. We wanted something a bit more active. The player needed to navigate a cave and dodge obstacles, we mapped this to head tracking and made the player have to crouch and shift their whole body left or right. To see the environment, the player needed to make noise into a microphone which would trigger the echolocation visualization of the cave. After a second or so the visualization disappears and the player needs to make another noise to see their environment again. The game became a spectacle; players moving left, right, and ducking quickly while making bizarre screeches. We also added a sonic attack moment where the player attacks bugs by shouting at them.
Echolocation was a tricky design challenge. We wanted people to make small bursts of noise, similar to how you hear a dolphin's click (small repeated sounds). However, during testing we found that people tend to hold sustained, long noises. This was a problem and we needed a way to move players away from this behavior. I started trying to imagine echolocation, a bit strange, but it leads to an interesting answer.
When I imagine being a creature whose world is based on sound vibrations. I also have to take into account that making sounds causes vibrations from within myself. These vibrations might interfere with any that are returning to me from the world. If I continued to make that sound, it is just putting more noise in the environment. Eventually it will all blend together. I will have diluted the useful sounds to the point that I can no longer see anything. With that idea in mind we created an effect where if the player holds louder noises for too long the world remains visible for a time, but will start to merge into a single fog of color.
This effect worked really well for getting people to not hold the same louder sound. But it did not solve the problem entirely. Since this effect is based on both time and decibels, it will blow out the world much more slowly if the sound is quieter. We noticed players only changed their strategy to become quieter. They still held long noises, but when the world started distorting they would stop. We needed a way to disrupt this strategy and force the player to make small bursts of sound. Our answer lied in (for lack of a better term) object permanence and distance. Our echolocation system already worked with a distance parameter. Where if an object is too far away your sounds will not reveal them to you. This was done to help simplify the world, we found that if you lit up everything then the players had a lot of trouble distinguishing the outlines of obstacles because there were just too many and they all overlapped.
Our echolocation system already worked with a distance parameter. Where if an object is too far away your sounds will not reveal them to you. This was done to help simplify the world, we found that if you lit up everything then the players had a lot of trouble distinguishing the outlines of obstacles because there were just too many and they all overlapped. This is illustrated in the image to the left. Notice how it is very hard to determine a path because you are unsure what obstacles are behind the very first. The distance of the echo allows us to solve this by feeding the player smaller pieces of information regarding the path ahead.
This distance parameter combined with the object permanence, or rather, giving the player bad object permanence, solved the sustained note problem for echolocation. Since the distance of your echo will only reveal things so far away based on the time you first make a sound, you do not get to see the rest of the world. If the player holds a long note, the obstacles they have revealed will remain visible for as long as they hold the sound. But, obstacles outside of their distance from the starting position of that sound are not revealed. This means that the player only has object permanence on objects they can see. The rest exist, but the player is unaware of them until there is a collision. This forces the player to make shorter noises, if they want to clear the game without collisions.
Level Design For Tunnel Games
Designing an environment which encourages players to move more than just their head was very important for this game. Since we were going for a more active play style, I decided to break the world into stages. As the game progresses each stage gets more difficult and the indirect control on the player increases. Each stage is broken into two different spaces, active play and break. This was done to account for player fatigue.
In a tunnel game the goal of each obstacle should be to guide the player into a space which makes for the most interesting movement to avoid the next obstacle. Each piece sets up the ones that come after. There are two strategies for obstacle positioning which I have found particularly effective at creating indirect control to guide the player down the path I wanted them to go.
Funnels are obstacles that come together in such a way that the player is guided down a safe path which leads to a different obstacle. This final obstacle forces the player to make a fast decision in how they will avoid it. Here are two example from this game.
2. "Safer" Paths
A “safer” path is one where the player makes a choice about positioning based only on the current obstacle. That choice is the safest way to get around that obstacle, but it leads them into a more dangerous path, thus causing them to make more exciting movements to avoid the rest of the obstacles. I prefer to use “safer” paths as I feel funnels can become too repetitive quickly. These paths also allow for great variation while achieving more moments of choice for the player. An easy way to do this is to put obstacles slightly off center, creating two general spaces the player can move past the obstacle. One of them will be slightly larger and thus most players will fall into its trap and begin down your “safer” path.
The center pillar is slightly off center to the left. The opening on the right is a bit bigger than that on the left. Most players go to the right and since this is head tracking, a bit down.
Which leads them to an obstacle in the bottom right, the easiest path is to lean slightly left. They won't go up just yet because that requires more physical work.
Now they tend to go straight up because they encounter an obstacle in the bottom left. Since these two obstacles are so close together this motion joins with the previous one and they godiagonally up and to the left, starting with left. They could go to the right here, but it requires finer timing to make it between the two obstacles.
The player is now close to the ceiling and stretching a bit, which is more physical work. Players tend to want to be in the middle of the tunnel because it is calibrated for that height to be their standing height. It is easier for them to stop stretching and go into a crouch and the bottom, though it may not look it right now, is a bit bigger than the top. Most players go down here.
And they find that the whole bottom is blocked by the next and final obstacle in this section. They must go up quickly.