Jump to content

OpenVR 1.0.17 Update


Recommended Posts

There is a branch that updates T3D to build with the latest OpenVR release and adds support for the new IVRInput Interface and Hand Skeletons.

The branch is here: https://github.com/OTHGMars/Torque3D/tree/OVR_1017f


Build instructions and branch notes are here: https://github.com/OTHGMars/Torque3D/blob/OVR_1017f/Templates/Modules/ovrModule/branchNotes.md

All of the scripts used when creating the videos below are included.







Link to comment
Share on other sites

  • 5 months later...

It's great.

With friends we want to do a VR game, we would like to use T3D.

So I have a few questions about T3D and VR.

1) the VR extension is shown with an oculus, can it be funcitoning with a HTC ? Using OpenVR it should work but I'd rather ask.

2) are there any necessary scripts or is this C++ only?

3) can it display HUD items ?

4) the implementation is not perfect ("Work Remaining, Issues and other Assorted Ramblings").

Do you plan to work on it again and improve it for T3D, or should we wait for a new version specific to T3D 4 ?

Link to comment
Share on other sites

1) I have tested with an Oculus Rift and HTC Vive and both work. In theory it should also support WMR devices, but I have no knowledge of anyone testing with WMR yet.

2) There is some script setup required, examples are included in the branch.

3) Yes, there is support for floating overlays and the OpenVR dashboard so you can render T3D guis directly in the headset.

4) It will be updated for the new e/c player controllers, but it's unlikely that will happen before T3D 4 releases. Hopefully shortly after though.

Link to comment
Share on other sites

  • 2 years later...

Thanks for doing all this and releasing it! 

This is 100% functional in 2021 with the Index + controllers, still using SDK build 1.0.17. I tried throwing 1.16.8 in, but enough has changed that I'll probably need to upgrade a few builds at a time, and for the moment this is working perfectly.

Only one proper technical issue so far: The LOD system doesn't function in VR (take a look a the vehicle in the empty terrain map). Will investigate. At the moment I just have it hacked to always use max LOD.

--- TL;DR portion below, discussing gameplay implementation details for VR in T3D

Right now you can reach parity with No Man's Sky by simply using the seated mode. This is more than sufficient for vehicle cockpits, and it's workable for a player character if you don't mind that it's not proper roomscale (you can walk away from your Player body). Like in NMS, you can just tell the player they've moved too far from their character body and do an auto-recenter. If concerned about the player putting their head through geometry, you can run a raycast every tick between the character's head and the VR HMD.

That plus putting the ShapeBaseImage on a tracked controller is sufficient for your basic singleplayer experience as long as you don't have too many narrow doorways. The player never sees their own body, it's just used for collision volume and taking damage, so they won't care that your hands and gun don't line up with the rest of the body.

I think for a basic crossplay multiplayer experience, getting the Player to line up its aim angle with the held VR gun should be sufficient. Limited, because it eliminates all the fun VR social interface of gestures and head tracking, but functional for putting VR and flat players into the same world. Your avatar will do odd stuff if you throw the gun around, but nothing more odd than what you can do now by spinning with your mouse.

I'm also running your GuiOnObject2 implementation for VR GUIs. Working on a hybrid of laser pointer and touchscreen, where you can point and click the trigger from a distance, but at very close range it will register as an auto-click like a touchscreen. It needs basic collision detection (prevent the hand from going through the screen) to work the way I really want it, where you would be able to touch and swipe to move a slider. Will share whatever I come up with on this if it's any good.

Edited by Atomic Walrus
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Create New...