VR Expansion Plugin

Pushed a new commit to the Template AND the plugin


Changed VRExpansionPlugin to be two seperate modules, one for all platforms, and one for OpenVR

The OpenVRExpansion module just has additional functions that are OpenVR specific.

 way if you want to publish to Oculus Home you can turn off the OpenVR plugin and it shouldn't package out the SteamVR binaries anymore.

 WILL require replacing the VRExpansionLibrary Actor component with an OpenVRExpansion Actor Component if you were using one. Decoupling the 
standard VR library from OpenVR lets it be just a blueprint library, due to the current version of steam in the engine however the OpenVRExpansionLibrary
still has to be an actor component to allow for correctly loading / unloading OpenVR across its lifetime (has to manually load DLLs).


How do I add the VRExpansionFunctionLibrary to a Pawn? Isn’t it supposed to be a component? I can’t access the functions.

Open up the pawn, add component, OpenVRExpansionFunctionLibrary.

As of the last update the VRExpansionLibrary is a blueprint library only as the only reason it was a component was because of SteamVR features. Now the OpenVRExpansionLibrary is a component and handles the OpenVR specific functions.

way if you ever want to totally remove OpenVR (for say Oculus Home) you can just disable the plugin for it separately.

Edit Judging by your screenshot you have the new module either not enabled or not compiled. It should enable by default, so I assume you did that on purpose. In that case you should be able to find the VRExpansionLibrary functions without a reference as they are all static blueprint nodes (right click on blueprint editor, search VRExpansion or the name of the node). If you wanted the OpenVR specific stuff you’ll have to re-enable the plugin and add the component.

I think I missed the OpenVRExpansionPlugin folder, as I only have the VRExpansionPlugin installed. Let me check that.

It is inside of it now, there are now two sub modules inside of the OpenVRExpansion folder.

First off, thanks for the great plugin! Very fun to test around ideas. I would have question about multiplayer part with the “Plugin Example Template”. When trying to search servers we get “No servers found”, is there anything on config files we need to tweak? We both have tried to “host server” button, but still results into “no servers found”.

The example DrawerBaseActor’s physics drawer (drawer1 with the physics constraint) only works correctly with a Zrot of 180 degs. Not a criticism, just thought I’d point it out as I spent some time puzzling why it didn’t work as expected.
Thanks for amazing plugin.

Locally or in world? If it is locally you would need to adjust the physics constraint, if it is in the world than yeah, that shouldn’t happen.

In world coords. If you simply drag a DrawerBaseActor into the world the physics drawer doesn’t work. It only works correctly at a rotation of 180 just like it is in your example map.
Hope I explained that clearly. I’m not sure why the physics constraint seems to not rotate with the actor. My UE4 inexperience probably!

Ah, it was because of some custom logic I ran on setup for that component.

I fixed it and uploaded the fix to the template.

Thanks for reporting it.

Nice one. I see the rotation transform you omitted.

Not only is your plugin great but learning to use it is a cool and fun tutorial in using UE4.

Cheers.

Got it working now, thanks mate :slight_smile:

Pardon me iam very new to the community, and i am struggling
Firstly thanks for your great plugin. Luved it. I am using your plugin to create a architectural walkthrough. The problem is i am a total noob in blueprints and coding. I brought everything into your template scene.
Appart from some wall collision area everything is working. Please suggest some ways or share thoughts on the following.

  1. The teleportation orientation now seems not working with the trackpad buttons, Please suggest how it can be changed from HMD to trackpad

  2. When I bought the floor to the scene the teleportation accuracy is a bit off

  3. Please also suggest an easy way to copy the door dynamic interaction and the drawer interaction

  4. Also in my visualization i have to slide a window up. i hope that will work if i use the slider on your example in a vertical way

But i dont know what all things need to be copied exactly…

i know a bit of unity3d but i have only a month of experience in unreal. Please help.

Also if u have a video tutorials related to great plugin please shre

Thanks a ton

Hi @jomax3d, and welcome to the forums dude!

Have you tried looking at the Unreal Video Tutorial section yet? You can find it here https://docs.unrealengine.com/latest/INT/Videos/

Also there are a ton of really good tutorials to be found on YouTube, i have just started learning UE4 in the last month so you are not alone lol. Goodluck
Peace
D

Hey ,

Still enjoying the plugin, Question though. How would you detect the release of for example the drawer? So whenever I pull the drawer out then release the drawer I can make something else happen?
Event on grip release is for the whole blueprint isn’t it? There are a couple of drawers in the blueprint and the event is just a single event.
Any thoughts?

Cheers!

You can compare the gripped object that is passed in on Event Release (part of the grip structure) to the drawers to get which one was dropped. That or you make the drawer a grippable component subclass itself with its own logic for when it is dropped and handle it in there directly.

Thanks Donnie

i will check those

J

Weird, I thought I asked my question here already but can’t find it so guess I’ll do it again.
The plugin seems very nice and I would like to use it for my project.

So to my question…
Is there any license I should be aware of or may I do whatever I want with the plugin?
Or what am I limited/restricted to? What can I not do?

Hey, another question.

I got a problem with crouching, it just does not work.

When I go to crouch, the capsule goes from :

to :

And in the end I can never uncrouch, because the capsule collides on the bottom in an unfixable way. I did modify the engine to find out what happens, but I am wondering if I am doing something obvious wrong.

Note:

is not under actual VR, it is in the editor using a debug control scheme. The idea is that I can switch between VR and not VR.

Is there an easy solution for that?

I’m not sure about that, but I’m working on trying to create a VR/nonVR solution. I have a function to allow me to switch between VR/nonVR which sort of works… Only problem is, the hand meshes aren’t showing in the VRpawn for me. Trying to figure out.
Are you interested in helping one another out?