Steam VR and supporting DOOM for OpenVR

edited 2016 Nov 30 in General
Been awhile since I last posted here, but I just got the HTC Vive Pre VR Headset :)

Here are some things that are new vs the old Oculus DK2:

> Higher Resolution AND FOV
- 110 degree viewing angle (can't see the sides of the screen!) and whopping 2160 x 1200 combined resolution!
- 90hz Panel !

> Room Scale VR
- Can literally walk around your room and explore in a 3D space!
- Exploring makes a HUGE difference and 1:1 movement makes motion sickness a thing in the past!
- 15m x 15m tracking space, no occlusion of controllers

> Two Motion-Tracked Controllers!
- Sub-millimeter accuracy! No laggy controllers in a 3D space
- Ability to interact with your environment

> SteamVR
- Universal Cross-HMD SDK
- Works with Oculus, HTC Vive, and ALL other OpenVR devices
- Super easy to use!
- Direct Mode for better reliability (no more using the HMD as a secondary monitor!)

I believe supporting SteamVR (OpenVR) as a whole would be best for the Doomsday Engine because of it's universal ability to work with any OpenVR compatible VR Headset (this means no more proprietary VR SDK's) which eliminates the need to add more code every time there is a new headset or new sensor in future headsets since the SDK deals with all of this.

So how do I vision this working? ...Motion Controls!?!

First up, there is no need to implement motion controls (yet!) because this is still a complex problem for 2D sprites as weapons. I believe just supporting the headset for now will be fine with the current set up. I have played TF2 with this headset (sitting using keyboard/mouse) and suffered no motion sickness (besides it being stuck to 60hz because on my monitor on extended mode, update your game valve!)

BUT don't get me wrong... playing Doom with these two controllers would be a dream come true!
Here is what we are working with:

Each controller is equipped with a touch pad NEARLY IDENTICAL with the Steam Controller. Works the same way, has a button click... all sorts of fun! There are also a shared grip button on each of the controllers as well as a trigger on the back. I believe movement should be linked to the left touchpad (press up to move up, down to move down... strafe strafe strafe strafe) and the right controller to be used as a aiming mechanism for shooting the gun.

This is where things get a little tricky though. The crosshair should be linked to the motion controller with the gun sprite on it (preferably right unless you are left handed). It would help if we were using the 3D Models of the doom weapons since we could just attach them to this controller in a 3D space and it would look right, but I suppose the 2D sprite should suffice... haven't tested it so don't know how it would look. But basically to aim you just aim the crosshair up by pointing the controller like a gun and firing! That simple :)

How do you config all those weapons on a steam controller though? Where are all the buttons!
Just use a scroll wheel like this and run your thumb in a circle to select the weapon you want. If, say, you had a doom mod for like 30 different weapons you could potentially have a infinite scroll wheel by making it "pop out" as you scroll up and down in a spiral fashion on the right touchpad.

Anyways, before I get ahead of myself... let me know what you think! I believe if the Doomsday Engine wants to support VR fully and with the new Oculus Rift and HTC Vive literally weeks away; perhaps using Valve's OpenVR is the best choice given it's ability to work with many different HMD's!

Obviously this would take a long time before implemented and may be too much work... but given how great of a reputation VR got on the DK2; having a doom world you can literally duck behind cover and shoot? It's the ultimate goal of VR to completely put you in a new world and the Doom Universe is my first stop.

Let me know what you guys think :)


  • Personally I remain excited about VR, although I do have a couple of big reservations for the time being:
    • The tech is very much in its first generation, and there are multiple HMDs on the way. It is a big challenge to support more than one in the sense that all the fine details (that are so important for a VR experience) are exactly right.
    • I have no plans to upgrade my Windows PC or purchase HMDs at this time; I'm mostly in a wait-and-see mind set. Curious to see which VR system eventually comes out on top (if any)!
    • I am not convinced that 1st person shooters are the best fit for VR, at least for now, because it involves a lot of turning around and accelerating/decelerating movement. The first generation of VR hardware seems to be best suited for cockpit/room-scale interactions.
    I'm happy to accept patches and other contributions regarding VR features, though. At some point in the future I do intend to restore the Oculus support, when the consumer HMD and SDK are available.
  • An Android port for running on Google Cardboard would be cool.
  • Duck behind cover and shoot? In DOOM? You're doing something wrong XD (just kidding)
  • Skyjake if you had red the post he was suggesting dday support steamVR witch makes it so only one VR code base is needed and all OpenVR devices will work. witch means less over head on the person implementing VR into doomsday.
  • I think first person shooters are awesome in VR. But, I seem to be very much in the minority as I'm unaffected by motion/vr nausea. I've played the Rift build of GZ3Doom and love it. I'd prefer to see Dengine in VR with the higher quality textures and 3D models. Not to mention being able to play Hexen as well.

    Going with SteamVR/OpenVR would be a good choice as it does level the playing field, as it supports 3 HMDs now, Rift, Vive, and OSVR. For round one I'd focus on just HMD support, leave the motion controls for further down the road if ever. I'd be happy enough with Xbox gamepad support.

    I would prefer that aiming be coupled with where you look, at least until motion controller support is implemented.
  • A brief update on my VR thoughts: my Windows PC is now at a sufficient (minimum) level for VR, and I've still got the Rift DK2 so hardware-wise the basics are in place. Going with OpenVR would be a sensible choice to support multiple HMD models. I still don't think old-school FPSs make for a very good VR experience, at least not without some gameplay/movement tweaks.

    Doomsday supported Oculus Rift back in 1.13, when LibOVR was around version 0.4 beta. The shoot-where-you-look mode was implemented back then and should still work. However, LibOVR was going through API changes before it hit version 1.0, and I didn't keep up with all the changes so VR support was disabled.

    Xbox controllers should be working in the 2.0 unstable builds already (there is a controller preset available in Doomsday's Input Settings).
  • Hey @skyjake -
    Got a question on the subject of VR in the Doomsday engine.

    Oculus is making a 200 dollar standalone VR headset. Do you plan on supporting it?
  • Headclot wrote: »
    Oculus is making a 200 dollar standalone VR headset. Do you plan on supporting it?
    In theory that sounds interesting, however it is premature to make any decisions until the official announcement/launch...

    When it comes to VR support, my opinion is still pretty much the same in my previous comment. There has been some progress on this front, however, as Doomsday is now using a newer version of OpenGL and that will make it much easier to integrate the rendering with LibOVR/OpenVR.
  • Hey @skyjake -
    The 200 Dollar VR headset has been announced. :)

  • From what I've understood, that sounds essentially like a custom Android device since it is Gear VR compatible. That means in order to support it, the mobile port would have to be completed and the renderer would need serious optimizations. Therefore, I unfortunately don't see Doomsday running on Oculus Go any time soon...
  • Seems like valve is making their own VR headset.

Sign In or Register to comment.