We occasionally post insights from the Oculus Developer community so that VR pioneers can share their best practices and help drive the industry forward. Today, we feature RJ White, creator of the Oculus Go game “Hardlight Blade”, an arcade style hack-n-slash arena game using sci-fi melee weapons to tear through hordes of insidious robots.
RJ is a VR developer who is part of the first cohort of Oculus Start, our developer support program. We reached out to RJ to hear more about his VR developer story, his experience as an Oculus Start member, and his approach when developing VR experiences.
What inspired you to start creating for Virtual Reality?
My first exposure to VR was a gameplay video of Job Simulator in 2016. Though the art style was relatively simple, the ability to interact directly with objects in a 3D world was very awe-inspiring. I didn't own a high-end computer back then, so I first began developing on the Oculus platform with the Gear VR. I was excited by the accessibility of mobile VR, even prior to the Gear VR controller's release.
I had lots of game development experience prior to jumping into VR development. However, when I was able to place a 3D object within an environment and interact with it, I was hooked. Since then, it's been my goal to create engaging interactive VR content for all platforms I can reach.
How did you come up with the concept of Hardlight Blade and how did you approach developing a 3DOF melee combat system?
Hardlight Blade actually began as a bonus level for another game I was working on called “Animov”.
I designed Animov to focus on first-person shooter gameplay. However, many users requested I also include a melee weapon in the game. As soon as I started exploring the design of such a weapon, I quickly realized the controls that were already in place worked well for guns but did not translate well for knives or swords.
I then embarked on a side project to discover the best way to swing a sword a while being limited to the rotation of the Oculus Go controller.
I set out to create my own "arm model", or a virtual representation of where the player's hand might be in physical space when considering the motions they make. Though an arm model already exists within the OVRCameraRig prefab in the Oculus Integration for Unity, it seems to be designed mostly for pointing and selecting UI elements.
To get the feeling of realistic arm movement, I relied on an IK rig attached to a point on the surface of a sphere. The Oculus Go's controller rotation controls the rotation of this sphere, and the end point of the IK point would move along the surface. I tweaked the exact position of the sphere and end point until the position of the hands felt right.
With two IK arms in place, the player begins feeling as if their motions are being translated in a 3DOF environment while simply rotating the controller.
What was your experience developing for Oculus Go?
I was already familiar developing experiences for Gear VR, so the transition was pretty seamless. Though there were a few new steps necessary to get my environment ready for Oculus Go development, I was pushing out builds to the Oculus Go within a day of buying the headset.
It's also a very comfortable VR headset to develop on! The facial interface was a perfect fit for my face, and the display is such an improvement over anything else in this category that it was easy to work on this after sustained hours of VR development.
What was it like joining the Oculus Start program, and how did your VR development benefit after joining?
I found out about Oculus Start on the Oculus Reddit community. I was super excited about the benefits the program had to offer, but my jaw dropped when I read the criteria because they described me to a tee! Though I was already familiar with developing for the Gear VR, I still needed access to newer hardware (such as the Oculus Go). Additionally, I had no funding, yet I already had a VR game published. Needless to say, I immediately applied and was accepted a couple of weeks later.
Being able to access the Oculus Start forums was great. I was happy to see the range of developers who were participating in group discussions - from the well-known veteran developers to those who were just starting on their first VR title. It was great to be a part of a community focused on solving development challenges and sharing excitement for VR as a whole.
Getting direct help from the Oculus Developer Support Team with my project was integral in getting Hardlight Blade published. Additionally, the hardware that was provided to me allowed me to focus on development without worrying about how to make up for those costs.
How was Oculus Connect 5? What did you find valuable during the show?
OC5 was a blast - I've never experienced anything like it! Being able to meet other developers, get feedback directly from veterans, and try out new tech was an amazing opportunity.
For me, the most valuable aspect of the show was networking with other developers. I formed close friendships with many Oculus Start members at the event (as well on the Oculus Start forums). I was also able to hang out with veterans from well-known VR companies (like Owlchemy). I'll never forget being among like-minded peers and mentors, sharing our excitement and passion for virtual reality.
As a developer of multiple VR games, what advice and/or development tips would you provide to devs who are just getting started?
Figure out what you want to create most in VR. What concept or idea have you always dreamed of being able to experience in reality, but couldn't? Expand on that concept and then break it down into small, manageable goals. Take each of those goals and learn how to tackle them one by one.
Once you start completing these goals, you'll start to see your concept to begin to resemble a functional experience. Also, you'll be able to see how far along you've progressed with your skills and knowledge.
Last, but not least - attend local VR meetups and conferences when you can. These events are great for not only meeting other people interested in VR, but also getting great feedback on your work. I recently gave a presentation on developing for mobile VR here in Minnesota, and people were very receptive of my talk and excited for the future of VR.