'Developing for VR's hardware constraints is like going back to the N64'

'Developing for VR's hardware constraints is like going back to the N64'
Matthew Jarvis

By Matthew Jarvis

April 25th 2016 at 10:46AM

Futuretown co-founder and CTO Justin Liebregts tells Develop about the technical challenges of bringing golf to virtual reality and explains why Wii Sports won't make you a skilled putter in real life – but Cloudlands might

Why did you decide to create a golf game in VR?

We liked the idea of how accessible something like a sports game could be in VR. 

Mini golf has such a broad appeal for all ages and skill.  What we liked the most is that we were able to make the mechanic of simply putting a golf ball on its own feel really fun.

We then paired this really natural mechanic with limitless course design ideas and felt we had created a very compelling VR experience for all ages.

How did you go about creating Cloudlands?

We had prototyped at least 10 different mechanics in Unity when we first received our Vive in mid 2015.

We knew we wanted to make a few games that spread vastly across different genres.

One of our first prototypes turned into sci-fi shooter Jeeboman, and the second one spawned out of a simple golf driving range prototype where you had a pitching wedge and chipped the ball from a rooftop onto different rooftop greens.

You can see a key part of our design toolkit is prototyping. We're keen on brainstorming and pitching an idea to the team that we think is interesting, coding it that day, and hopefully play testin it in the evening. If the idea shows promise we'll continue to refine it. If we don't see potential, we'll drop it and move onto something else.

Before we received our first HTC Vive dev kit, we wanted to make the best use of our time so we came up with an idea we thought would be fun in VR.

With no way of testing the idea and having not played any tracked controller games before, we spent three weeks on the idea. Once we received the HTC Vive dev kit and tested the concept in VR, it was instantly obvious that the idea we had spent the last three weeks on was a terrible game experience in VR.

It turns out that if you've never played any tracked controller games before, it's really, really difficult to identify what types of interactions feel good, and which ones are boring.

This is the primary reason why we are heavy on the quick prototype and iteration design workflow. We must discard most of what we know about traditional game design and start from scratch.

"If you've never played any tracked controller games before, it's really, really difficult to identify what types of interactions feel good, and which ones are boring."

Justin Liebregts, Futuretown

Golf in VR is heavily dependent on the correct implementation of physics and 1:1 movement and scale. Could you please go into specifics about how you ensured both and ball and club moved and reacted as players would expect them to in real life?

Any physics-based game, especially one you can easily compare in real life, needs to be as close to the real feel as possible or there is an immediate feeling of a disconnect between what they are seeing, and what they know should be how it moves in real life.

Similar to the ‘Uncanny Valley’ phenomenon of a disconnect between something looking almost real, but not quite there, this also happens when objects don't move as expected. It can really pull you out of an experience or cause frustration when you feel your action should of resulted in something different.

The ball physics in Cloudlands were re-written several times during the dev cycle. We needed to heavily modify the Unity physics engine to properly handle the ball at different ranges of velocity and angles.

There were also the issues of dealing with tunneling, which is what happens when an object is moving fast enough that between physics simulation frames the objects will pass through each other without knowing either of them should of collided. This often happens with thin or small objects. A golf ball and putter are both small and thin. There are several common ways to solve tunneling this but we needed very precise angle reflection and velocity results that required us to be creative about solving this problem.

I'm not sure we'll ever get a perfect 1:1 feel with our current tools, but I think we've made it 95 per cent of the way there and that will work for a casual game of mini golf. In addition to making the ball feel great to hit, we also spent extra time figuring out ways to make the ball bounce properly off of different types of surfaces.

Another design challenge was figuring out a way to make our putter feel good for all heights of players. One of our first implementations of the putter allowed the player to grow or shrink the length of the putter by pressing up and down on the touchpad.

One issue with this is that, even though users can tune the putter length to perfectly fit their preferred length, you'd end up with weird situations where you'd need to choke up or down on the club – such as hills – and it never felt good watching players swing underneath the ball through the floor over and over again. Many users thought this was a bug and that the putter was swinging through the ball, but it was clear the user was dipping downward on their downswing and passing through the floor mesh and under the ball.

To solve this, we designed our putter to automatically scale its length based on the ground surface. This means you'll never be able to swing under the ball.

Our favourite aspect of this solution is it requires zero teaching to the user. They simply play and many of the times do not even realise it's happening.

Teaching users how interaction works in VR is entirely its own challenge. If we can do something automatically for the user without them having to learn something, we'll go this route every time.

Cloudlands is coming to both the Oculus Rift and HTC Vive. Did you encounter any challenges designing for both platforms? For example, the Vive allows 3D positional tracking while the Rift does not.

Early on in our venture into the world of developing for VR, we made the decision to focus our premier experiences to tracked controllers. We felt that was the most interesting and innovative space to be able to design the types of games that no one has ever been able to play before.

For this reason, our games are really not meant to be played any other way, and Cloudlands will be available for Oculus Rift but only with Oculus Touch controller support.

This doesn't mean we won't develop games for non-tracked controller experiences, but these are the types of experiences we're most excited about developing right now.

Your previous title, Jeeboman, was a first-person shooter in VR. What is the future prospect for ‘casual’ games such as Cloudlands compared to more ‘core’ titles such as shooters and adventure titles in VR?

I think there is almost more room in the market for these broad casual style games versus the hardcore gamer titles.

The majority of early adopters of the hardware are going to be hardcore gamers and tech-literate individuals, but we've found that VR can be a very social activity. Sharing games in a social atmosphere with friends and family, you need content that is more simple and easy to get into.

You can't get much more basic than a putter and a golf ball. People pick it up instantly and there's almost no need for tutorials or explaining what the mechanic is and how to win. It's very clear and this can have very strong appeal with individuals who wouldn't label themselves as a ‘gamer’.

In some ways, VR is less hardcore than traditional video gaming due to how natural the controllers and viewing interface are compared to a traditional gaming controller.

Many gamers would say that Wii Sports’ golf mode is the closest to reality that virtual golf has got to date. How do Cloudlands’ controls and mechanics compare to a title such as Wii Golf?

I'd say that both games are completely different.

While the Wii motion controllers were revolutionary for their time, they used accelerometers to gauge the speed you were shaking the Wii Remote. To aim in Wii Sports' golf mode, you pressed left/right on the d-pad and shook the Wii remote based on how hard the swing gauge showed you needed to swing for a perfect hit. Once you aimed and shook the Wii Remote, your shot was pre-calculated using your in-game direction and swing speed from the accelerometer.

In Cloudlands, the game play is 100 per cent your real skill to be able to aim and hit the ball. Just like in real life, how swinging the club requires you to pendulum your shoulders, aim your stance towards the hole and keep your head down, all of these factors come into play. How you swing the club will directly correlate to how the ball is hit in the game.

If you play Wii golf, your real life golf game will not show any improvement. If you play Cloudlands I'm confident that your real life putting skills will improve.

Speaking more generally about golf games, it’s arguably hard to innovate in the genre without stretching into abstraction. Faced with the need to maintain at least a sense of reality in VR, how did you go about ensuring Cloudlands would stand out from other golf titles?

When coming up with the initial game design, we weren't worried about standing out against other golf titles.

The virtual reality and tracked controller space was so new when we had built our first prototype back in mid-2015 that we were simply excited about discovering this really simple mechanic so we wanted to make sure we could share it with our friends and family. 

The biggest separation we can offer from other titles is probably the course designs. Whether that means internally designed golf holes, or custom courses built by users, a feature we're working on that will be included as a free update to the game.

"Artists need to have strong fundamental understandings of the render pipeline to provide maximum visual fidelity while working with essentially half the performance that would normally be available to them."

Justin Liebregts, Futuretown

What development challenges remain for VR? How can these be overcome?

Countless challenges remain, ranging from design and engineering to art and even marketing. There are so many new and exciting problems we run into on a daily basis where there are simply no previous solutions to refer to, to see how someone else has solved it.

As more and more content becomes available and developers start pushing content out, this will become less of an issue, but I remember late last year when we were trying to design something like a basic inventory interaction model for our other launch title Jeeboman, and it took a considerable amount of time and prototyping to create a solution that felt really good.

Building a VR design pattern language along with best practices is what all developers are essentially working on together as each application faces new problems.

Problems pertaining to the inventory system ranged from things like font size for legibility, size of 3D models to display inventory, spatial selection system that felt like you picked the correct item 100 per cent of the time, having to deal with models clipping into world objects, and working with a limited amount of buttons to name a few challenges.

Each time we encounter a new problem and provide a solution, we're providing a backbone for what will become standard best practices in VR. Other developers can then look at earlier solutions and use those as a starting point to solve their own challenges.

Touchscreen interface interaction went through the same innovation curve, and now that we're over 10 years into touchscreen design, the design language has evolved. This will be the case for VR. It takes time and many people simultaneously tackling similar problems together. It's an exciting space to be in.

A large portion of the engineering and art issues lay around the tight CPU and GPU constraints. There is no forgiveness in VR for not hitting 90 fps, as it feels absolutely terrible. Engineers need to optimise their code to prevent issues like poorly running code causing framerate spiking. Artists need to have strong fundamental understandings of the render pipeline to provide maximum visual fidelity while working with essentially half the performance that would normally be available to them.

It's akin to traveling back in time and developing for the N64 with extremely tight memory and CPU budgets. It can be difficult finding developers, especially artists, that have such strong fundamental understandings of how the art pipeline can be best optimised. This is a challenge that will be overcome with practice and experience.

Some of the marketing challenges of early VR are simply the fact that if you haven't tried VR, it's hard to understand watching a YouTube trailer of a game and being able to understand why that would be fun. Some of the most interesting game mechanics have simply never been played before and until you've tried VR for yourself, there's a good chance you won't get it. One of the techniques being used to help overcome this challenge is using mixed reality to provide a closer approximation to what the VR experience is – cutting real life footage together with virtual reality footage.

What’s next for Futuretown and Cloudlands?

The team is working on several more titles set to launch before the end of 2017 to add to our Futuretown game brand. All of these titles are planned for launch on both HTC Vive and Oculus Touch platforms.

The team has been internally discussing Cloudlands DLC courses as a possibility, both free and paid. Nothing officially confirmed but expect to see more from that franchise.

This article is part of our month-long Virtual Reality Special. You can find more VR content here.