Project Gilmore a Weekend Project

Gerald McAlister | July 20, 2017 | Dev Diary


We’ve recently been on a bit of a break from working on The Guidance Team and built a small prototype that we took to calling Project Gilmore. The idea was to build an incredibly simple prototype of a mini-golf game for the GearVR, and see how well it would work. The end results looked a little something like this:

This is our first full demo with the GearVR Controller as well, so we kept the menus pretty basic, as well as the control scheme. However, as you may notice at the end, the final golf controls do not work very well. Hitting the ball presents an immense challenge, to the point where we actually don’t know how viable this is on mobile VR devices currently. Thus, we thought this would be a great time to discuss the pros and cons of mobile VR, and why we think mini-golf on these systems just doesn’t work (and how to predict what experience might be good!) With that, let’s dive right in!

The Good

Let’s start out with what’s good: The GearVR Controller in particular has quite a few different inputs. Specifically, it has both a touchpad AND a trigger (unlike the Daydream controller). This creates a very diverse set of inputs that can be combined together, even allowing for you to import the Oculus Avatar hands for usage.

Oculus’ Avatar Editor for the GearVR uses the GearVR Controller’s touchpad to create different hand gestures for selfies already!

We can do pointing gestures and thumbs up gestures with just two of the inputs, though we can get even more complex behaviors if we start using the touchpad to select different gestures. This allows for an incredible amount of flexibility for communicating with your hands, and we would still have the trigger for interacting within the game world separately. This is a huge deal for multiplayer games, and really gives developers a great set of options.

Sometime in the future we may discuss how to use Avatar hands on mobile VR, but for now we’re still experimenting away with this. Another interesting part of this however is how well the controller works for tool interactions as well. Due to their shape, using the controller to hold a golf club felt quite natural, and we almost instantly began swinging it around in game without a second thought. Because the GearVR Controller has a very different shape from the Oculus Touch controllers, it felt more natural in some ways to have a tool stuck in your hand, without constantly holding it with a button press. This will be great for games where you need to hold a weapon in VR!

The best part about having a motion controller, even as simple as the GearVR Controller is, is the ability to move your arm and do something else in one direction, while facing another. Because you don’t have to stare directly at a menu item, or raise your arm to click a button, it becomes much easier to interact with experiences in a virtual world. Testing gave us less fatigue, and we could sort of test experiences beforehand using Oculus Touch controllers on a PC.

The Bad

While the GearVR Controller has a lot of great properties, Project Gilmore was great about showing us some of the flaws of it as well. While some of these may be able to be resolved, we still aren’t sure how comfortable they would be in any situation. A great starting point to this is the ability to actually swing a golf club. Because Oculus’ APIs move the controller as if it were moving via your elbow (rather than your wrist like Wii Remotes used to), you end up with what looks like positional tracking. In hindsight, this is still just rotational tracking, and does not working for anything that requires positional tracking still.

A great example of this can be seen with a golf club. Our first thought on this was that it would be possible to position the golf club so its swing was right where the golf ball would be on the ground. Even with rotation, you can still hit the golf ball with various forces, so you just need to be able to hit it. The problem comes in with the fact that we don’t swing a golf club with just one joint on the arm. For example: Try pretending to swing a golf club while only moving your elbow joint. Keep your wrist and shoulder in the same position the entire time. Now see if you could hit a golf ball straight while doing this. Even if you were positioned just right, it would still be very difficult, and this is because you need at least two joints available to do this (e.g. your wrist and/or elbow). Because the controller can’t mimic this, it becomes near impossible to swing a golf club in a relaxed manner for the GearVR.

Hand gestures work fairly well on GearVR with the new controller, but tools can feel more comfortable.

Another issue with this is the fact that there is only one controller available to the player. Without having both hands available, you have to designate a side to which UIs will be more available if you don’t want to have a pointing interface. We had originally tried letting the player tap the UI buttons with their fingers, but this proved to be very tough because we had to keep two sets of the UI within reach of the left and right hands. This has the result of making tools feel a bit more comfortable to use than a pair of hands, and is why we switched over to them instead.

Conclusion

While it may be possible to create a more comfortable experience of mini-golfing for the GearVR with its new controller, we’ve ultimately decided to shelve this project for another day (Probably for when the first standalone headsets arrive). While this project might be shelved for now, it’s been a valuable learning experience for us, and we think we have a much better idea of what works with the GearVR’s Controller now as a result. For example, finding experiences that rely more on aiming rather than specific movements is a great start. On top of this, games that only need movement in one direction also work great with this. Similar to the Wii Remote, games that use simplified actions will greatly benefit from this controller. Have other opinions on the new controller? Feel free to add a comment! We’re always interested to see what other groups are working on!