The month of November has been another hard month to get through. December will be harder and I can't afford presents this year.
I have been making mediocre progress on integrating Oculus Rift + Oculus Touch with my game. I wish my pace of development was faster, but life happened and this was a high hurdle for me to overcome. Here is a short video of a prototype working:
So, what you're looking at is my new way of controlling characters. In the first second or two of the video, you are a disembodied floating head / entity in VR. You have the default VR controls, so you can be an invisible spectator in the game world. The next few seconds, the screen fades to black and then fades back in, and now you're controlling a wizard. You are still the same disembodied head, but now you're mounted on the shoulders of a character and able to control it. You don't control the creature directly however, you are more like a puppeteer and the controlled creature is your puppet. This is important because some of the inputs you might give to the controlled character might be invalid -- such as putting your hand through a solid object. The beauty of this layer of abstraction is that I can control any character through one VR interface, and adding additional hardware support only has to be done in the VR interface instead of every controlled character. This means less maintenance and human error, and a consistent play experience. I've gotten the game to the point where I can swap out my Oculus with my Vive, and with no additional reconfiguration, I'm ready to play. In terms of business, this is fantastic because it means that consumers of both hardware platforms will be able to play Spellbound and get a very similar experience, and that also means my total addressable market doubles. So, if I currently average one sale per day on Steam, if my game goes on Oculus Store, I'll average a total of two sales a day! Whooo! That's enough to buy myself both lunch *and* dinner!
I discovered that the oculus touch also has capacitive touch on its buttons. This is really cool, and now I understand why they call it the oculus "touch". Based on whether someone is touching a button, I can play different hand gestures (see: video). I wanted to be careful to implement the fingers so that it's not necessarily hardware specific. I plan to add support for the Leap Motion, so I don't want to paint myself into a corner with my implementation and force myself to refactor the code later. I also kept in mind the really early prototypes of the Valve controllers which were debuted during Steam Dev Days and architected my implementation to easily support it when I eventually get my hands on their hardware. Adding support for new hand input hardware will be super fast and easy now. The end result is that you've got wizard hands which somewhat mimic your own hand positions on the motion controller and it feels great. This helps increase immersion and presence a teensy bit more.
Then life happened. My girlfriend went to the hospital to get surgery for her tennis elbow (minor stuff). That pretty much put her out of commission for 10 days, so I needed to take the time off of work to take care of her and nurse her back to health. Zero game development was done during this time period. It's a negative impact on business, but it's a higher priority to take care of loved ones. It's not too hard to pickup where I left off. I hope I remember this in the future when any future employees need time off.
Last weekend, a horse died at our ranch. It just had a sudden seizure in front of a couple people and then it fell dead. We put a tarp over it and buried it the next day. Its belly got super bloated and looked like a balloon which is ready to pop. Since it died in the field, we had to tie it to a truck and drag the carcass down a dirt road to its grave. I was worried that the belly would pop on the gravel and make a big mess, but instead, it popped right when it fell into the grave. I didn't see it happen, but supposedly, there was guts everywhere and it was one of the most putrid smells you could imagine. I think that the grass the horse ate was still being digested, and a part of the digestion process is to generate lots of gas. If that gas isn't let out, the belly swells up. So... farting is actually really important!
I got back to work this week and have been focusing on reintegrating my VR interface controller with character controls. I made a huge breakthrough today: I have updated the way that I calculate the orientation of the player torso so that it feels a lot more accurate. Previously, I had something like a 20 degree margin of error. Now I've got it down to about 5 degrees. But, the huge improvement is that you can now turn your head and look over your shoulder while running forward. So if you're running away from something scary or dangerous, you can turn your head and see how far away it is without changing course. I don't think this is possible with traditional FPS games, because usually torso orientation is set by mouse look and movement is done with keys. I suspect that I may be the first person in the world to implement this feature. I'll be curious to see if anyone ever notices or comments on it in the future. It's pretty easy to overlook or take for granted.
In other news, OSVR is going to send me their VR headset :) Now, I'll see if my VR interface is really as robust as I think it is. Regardless, I'll make sure that Spellbound supports their hardware too. Their HMD's are sort of forgotten or overlooked, but making sure that their hardware has compatible content is always good for the VR industry.
The Oculus Touch launches to consumers on December 6th. I wanted to hit that deadline and have my game available on the oculus store on launch day, but I suspect I'm going to miss it by a week or two. I think the vetting process to get a good build on the oculus store is going to be pretty strenuous. I heard a rumor that if you drop below 90 FPS even once, you fail validation. Oh well, nothing to do but try my best and start the ball rolling on this process. I'll get there eventually.
My immediate short term goal is to get this big update out the door asap. The second goal is to get the game up on Oculus Store. The third goal is to localize the game into chinese and then launch it on the Viveport (China is a huge market for VR). The fourth goal is to add more content so that the game play is more compelling and interesting. Then, it's nothing but pushing out more content, content, content, followed by marketing, advertising, and marketing. Eventually... I'll sell more than one copy a day. When that happens, I can breathe a sigh of relief and slowly start paying down these IOU's and debts. I predict that the next two to three years of VR is going to be slow growth (based on hardware adoption rates). What this means is that I need to very carefully manage my company growth to stay under my income. I predict a lot of current VR companies are going to grow too fast, not make enough money to sustain themselves, and then they'll burn out and fail. Two to three years of meager revenue will kill a lot of companies if they don't continuously get cash infusions from investors or keep their burn rates low. Eventually, the VR industry growth will accelerate, and I intend to still be around to ride the wave upwards. I personally think a lot of current companies and investors are making the mistake of targeting non-gaming applications for VR before the market is ready for it. The reality is that gaming is the tip of the spear when it comes to pushing innovation and demanding hardware performance (just ask NVidia and Intel). Gamers are the early adopters. They're slow to adopt because the barrier for entry is still pretty high and there isn't enough compelling VR content to make the hardware purchase a good value. THat will gradually change though. Once the gaming market has been saturated with VR hardware, the secondary business use cases can start to become more relevant. But nobody is going to say, "Hey, I need to visualize this spreadsheet in virtual reality because it helps the business make more money faster.". Today, I would be nervous about investing in any VR company not involved in VR gaming somehow. Anyways, Christmas is right around the corner and I think a lot of people are going to be getting a VR surprise under the tree. We'll see how that impacts the industry and subsequent sales.
P.S. posting about my game on reddit, twitter and facebook had zero impact on my sales.