Machinegun Ski Poles!
Full body motion
Project Pow Pow is a fun skiing game for the HTC Vive and the Enflux Mocap Suit built in one and a half days at the SF VR Hackathon.
The coolest feature of the game is a player locomotion system that allows you to naturally ski down the slopes. This also took us the longest to develop. This system allows you to use ski poles to push yourself forward, and then your speed is determined by your orientation to the slope. If you go down a hill, you accelerate, you can turn sideways or backwards to slow down, if you turn backwards, you'll slow down, then go backwards. We also built in support to use your foot distance to control speed, but did not iron it out for the final build. Your orientation is set by your head, though the intent was to use the Enflux Suit and uses your hips to steer. We also tried using your hand positions which works well until you add a gun to the ski pole.
The locomotion system was originally started by Joni who went about trying various methods of locomoting using a physics body in Unity which would handle collisions for us. This had problems though in that if you went down a terrain slope, you would end up bouncing, which was pretty uncomfortable. Mike suggested we instead glue the player to the terrain and interpolate the position to smooth things out and Joni spent some time trying to make this work. Joni ended up getting sick Saturday night so Mike had to finish the locomotion system. Mike was able to nicely glue the player to the terrain and the locomotion feels pretty comfortable.
This project was whipped up from scratch for this VR Hackathon. For the base VR functionality we used the SteamVR plugin and the SteamVR Toolkit, we also took the Enflux character Humanoid and implemented it in to our own player controller.
The big important art asset created for this was the Mountain, Mike created the mountain first in World Machine by using a combination of procedural generation, and then using layout and erosion tools to bend the terrain to his liking and make a nice path for skiing. Splat maps were also generated based on the slope and the terrain was brought in to Unity. Mike used the Relief Terrain Pack to get better terrain shaders and import the Splatmaps. Mike also found some Winter Textures on the Asset Store which he used to add some color.
Mike also modeled the Ramps as well as the Ski Flags. The Ski Flags will react to physics with the ski poles, but it's hard to tell when you go fast.
The Ski Poles, Ski's, MachineGun, Drones, and Particle effects were all found on the Unity Asset Store or Turbosquid.
This project was a lot of fun to develop, but also met with many challenges. We tried getting the Enflux suit working early Saturday but found out they had a driver issue with Windows 8. They fixed the bugs and Mike got some stuff working Sunday, but did not have much time left to iron out the kinks, but this should be awesome once the full body tracking is able to control the skis reasonably!
I plan to Open Source the project after this hackathon, but will have to strip out the paid Unity Assets.
Download for Vive at https://drive.google.com/file/d/0BwFn9oh3rXqKQWYwVWI5OEViSTQ/view?usp=sharing
Download for Enflux at https://drive.google.com/file/d/0BwFn9oh3rXqKVjU4WWRmbTBhYWM/view?usp=sharing