VR Olive: New fps controller, more inmersion, less dizziness and accurate aiming

Hi everyone!

I am Carlos Coronado, currently redoing MIND: Path to Thalamus in the UE4 and VR. In this thread I would like to show you something I’ve been working in the last months: my approach to first person controllers for VR. To sum up, I’ve been watching how we humans behave when we walk and turn and I’ve tried to imitate this process in the VR. No, this is not about realism. This is about a more natural way to control shooters in VR.

For me, moving the direction of the player’s body with the left mouse or joystick has always been a problem, because when we do so, the feeling we get is the entire world is rotating, but our physical head has not moved at all and that may cause dizziness to a lot of people. In the other hand, as VR developers I think we want the player to move the head (but not too much so they don’t feel tired) to get a better inmersion and this new system I’ve made is also a good way to achieve that. Let’s get to the point.

If you want to rotate your body, first you look at the direction where you want to rotate, then you press the “rotate body” button (could be anything: left trigger, E, Q, a number, middle mouse button…) and then your body rotates where you are looking at. This button also have a second mode: if you constantly press the button, your body wil always rotate where you are looking at. Amazing for running! So… yes… you are moving the player with just one hand and rotating him with just one button! Then, what awesome stuff can be do with the other hand (the mouse hand or the right joystick hand)? Well, let’s use it for shooting! Use the mouse to move a crosshair in the screen… just like in on-rails shooter arcade games such as Time Crisis or The House of the Dead. What about aiming? Well, I’ve done some tests and aiming doesn’t feel good at all. I mean, it is indeed too realistic to work in a game. Fortunately, there’re good news still. I have tested this with a lot of people and about 75% of them prefer this new way of controlling shooters. Of course, there is a 25% that still prefer the old school way. Don’t worry. With this system the right button is free to use and while you hold it down, you will move your player as you have always been doing… but with 100% free screenspace to aim!

There is still a lot to do, but I think this is completed enough to show this to the world. A big company working in VR asked me to show this to them and so I did a month ago. No answer from them still so if they are not interested I hope you are! To sum up:

  • WASD or joystick to move the body
  • Look somewhere, then press the “rotate body” button to reorient your body in that direction
  • Constantly press the “rotate body” button to always rotate your body where you are looking at
  • shooting and aiming as in time crisis games
  • gets rids of the tank mode problems in the old school method
  • no limits, tricks ore workarounds like moving the mouse in the center of the screen is used for aiming and moving a lot the mouse is used for rotating

All was done using blueprints in 4.6 and the template I’ve used to develop thisthe template done by mitchemmcbut I am planning to redo all this in my own template system :slight_smile:
Well… here are three videos showing how the system works. Sorry for my English. This was all improvised and I didn’t had time to make a script for it.



Menus and grabbing objects:

Fantastic work! You beat me to it! I’ve been on the verge of buying a Galaxy Gear VR so I could try something similar. It really surprised me at how long people have been sticking with traditional M&K and joypad controls for looking and moving in VR.

Look forward to being able to try this.

Nice work!

For the movement, would it be possible to add a ease in / ease out curve to it? That way, as the player’s body is turning, the player can match it with the headset (view/turn matching? I don’t know how to describe it).

For example, the player is looking to the right, and then moves his body. In the current system, the body moves, and then the player has to turn his head back to a forward position. If there was an ease-in/ease-out to it, then the player could match the redirection of the body while moving his head back forward.

Of course, as with almost everything VR, the amount of easing would need to be able to be customized by the player.

Hi Jimmy! Yep, I think we should skip traditional M&K and joypad controls for VR but that doesn’t have to mean at all to make new input devices for VR. I think K&M and joypad still offer a lot of options, immersion and accuracy but we have probably been doing it wrong by just trying to imitate non VR FPS controls. Amazing times we are living!

Hi SaviorNT,

Yep, that could be possible. I tried in the past and I didn’t like the effect at all but as you say, VR is about offering options to the people so yes, a slider to control the ease-in/out will be added, and also another one to control the FOV. But for me, this kind of features are just aditions, since now what I’ve been doing is developing the core concept behind it and if that works, some user configuration in the top of it will make in even better for each individual. I am a friend of standards but in VR everybody has their own way of moving. It is really interesting for example that for some people holding the “rotate” button makes them SUPER sick and for others it is the only mode that don’t make them sick. Everything is integrated in a single control scheme and using just one button so that’s why the configuration really shine here. I don’t just coerce the player to choose a locomotive method, but all or them are merged in a single scheme.

Can’t wait to compile a demo and show this to you! Look for it! :wink:

And thanks for the feedback Tkfore21, I will send you a PM as soon as I got it playable :slight_smile:

Hi there, like i mentioned on the Oculus forums, the navigation part looks very similar to a demo i released a couple months ago, in case someone wants to give it a test:
(check out “Readme.txt” for detailed controls)

I probably should have done a youtube video like Carlos did, because i didn’t get much feedback at the time ;-(

I think probably the fact that I must use a pad to play is also something you should consider. Because of that I haven’t been able to test your solution yet but I think they are different in a lot of ways but both of them great as a start point to start doing something polished! By the way, PatimPatam and I are from Barcelona (Spain). If any VR developer from the are is watching this please warn us! I will give you feedback about your solution asap patimpatam but I will need a controller first :stuck_out_tongue:

Anyone has achieved a similar solution? I am interested about ways of totally skip the tank mode methods and also integrated moving and shooting solutions :slight_smile:

Hi Carlos

Great work, I had seen other small examples of this control scheme however not as refined as your one.

Do you plan on releasing a compiled build for testing and feedback, I would love to try this out?

Intesting ideas here.

I’m intested to see how the head turn, body turn, corrective head turn works in a more competitive situation.

Hey! I will release a demo soon. Not sure if I will release the source code right now… I’ve spent a lot of time working on this instead than of payed jobs and a part of me wants to earn some kind of profit from this but at the same time I want people to get involved with this. I have to think about it :slight_smile:

Well, I am not a competitive player but 2 friends of mine are “semi-pr0s”, they tried the prototype and they liked it a lot but of course for pro situations it felt diferent for them. In terms of aiming accuracy while you are rotating, if that’s what you are asking, they felt really confortable. In fact, if you hold the Rotate body button while running and pressing A or D, you can do super cool matrix stuff haha :smiley:

I’m going to implement a feature and I will implement the demo soon :wink:

Thanks for the feedback!

I just tried the demo which was available here: VR Olive provides a fantastic new twist on controls in VR games

I personally didn’t feel it helped too much with the turning/vesibular sense stuff (for me). Maybe a tad, but I feel VR comfort mode turning helps me more. Perhaps if the camera snapped a little quicker like VR Comfort mode does, where it is an instant snap when pressing E. Also, holding the right mouse button to turn with the mouse there seems to eliminate the purpose of this, and holding E feels almost the same as mouse turning (pretty uncomfortable). I think you may be onto something, but was not quite what I was expecting and felt a little clunky.

This is pretty cool!

Any chance that we can get a hold of this for our own VR games?

Hey! I still need to think how am I going to release this to the public, but I am certanly sure I am going to release it somehow so you can use it. I am a little bit divided. In one hand I’ve spent a lot of time in this and not getting involved in paid job because of this and I want to earn a bit with this but in the other hand I want as much people as posible to use it. We’ll see! I have to think about it :slight_smile:

Hi Kat_29, see, for me it is really valuable some people don’t quite like it. The most valuable feedback I get comes from people who don’t like the E button. That’s why I implemented the hold right mouse button rotation too :slight_smile: Why hold it? because of shooting. That why tank mode is not a problem and you can use your mouse both ways (rotate and shoot) but not at the same time.

In the last build I’ve implemented a way to control turn sensivity and hopefully that will help people to find their correct sensivity for them. I know it is a little bit clunky right now but well, it is a prototype and it still needs some serious tweaking! :slight_smile:

Thanks for your feedback!

If you’re wondering, this is the control scheme I’ll be trying to combine it with: GBKillhouse 2014 17 03 Rift.

If figure that when the player takes their weapon off target, switch to the head driven rotation.
When the player brings their weapon back on target, switch to mouse controlled rotation.
Speed and accuracy… ?

Sell it on the marketplace if you need the money. Plain and simple. I would gladly pay for something like this.

Kris, that video seems great! The problem I see is that there is no way to know where the center of the screen is, and it seems the weapon is aiming there. But hey, you can try VR Olive by yourself here. Let me know what you think about speed and accuracy ;):

HeadClot yes, marketplace is something I’ve been thinking about. But first VR Olive have to improve a lot! :smiley:

After a long period working on the dungeon I’m ready to give you some news about VR Olive.

As you know, the VR integration is a mix between the total immersion of the headset and an external control device, such as a keyboard, mouse or pad. The development in this direction goes very well, the integration with pads is done, and it uses the stick to rotate the body. It’s the equivalent to the “E” button in the keyboard controls. However, the best new is that implementation is open to user configuration thanks to the bindings system. Finally the rotation speed is adjustable with the mouse wheel, another aspect with the best immersion in focus, without a gameplay loss.

Last but not less important, I was thinking about the camera shake effect and how to avoid the sickness.

Traditionally games implements this effect moving the camera in the same way as we move the mouse randomly. In VR this is a problem because the equivalent to the mouse movement is our head, and it will be like we are headbanging like in a heavy metal concert.

To solve this in VR Olive I’m moving the camera laterally. To help you understand it, it’s like someone grabs you and shakes you from left to right. The shake effect works, but we will not loose the head control, since all the body is moving. With this configuration we want to achieve a more natural control and integration of the player and the environment.

Hey Carlos,

Great update! Can’t wait to see the head movement in action! I’m curious to see how it makes the player feel and react.