VR Expansion Plugin

Here is a quick video of all of the stuff that i have going so far in VR!! (It is not too much I know but it is starting to feel like a real start now…) Thank you!!!

I’m having problems using “inclusive” blueprint nativisation in 4.24.3, with the plugins located in the project folder - I keep getting these errors (these don’t show up when packaging normally). What can I do to fix them? I would really like to enable blueprint nativisation but there are a lot of errors like :



TritonVR/Plugins/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public\OpenVRExpansionFunctionLibrary.h(704,3):  error: use of undeclared identifier 'vr'
vr::Texture_t VRTexture;

TritonVR/Plugins/OpenVRExpansionPlugin/Source\OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(711,12):  error: member reference type 'UTexture *' is a pointer; did you mean to use '->'?
VRTexture.eColorSpace = vr::EColorSpace::ColorSpace_Auto;

TritonVR/Intermediate/Plugins/NativizedAssets/Android/Game/Source/NativizedAssets/Public/Grenade__pf3595661997.h(5,10): fatal error: '../Plugins/VRExpansionPlugin/Source/VRExpansionPlugin/Public/VRBPDatatypes.h' file not found 

Any help would be great!

I assume it will go away, if you move the CreateOpenVRTexture_t function out of the library header and into a block in the cpp file covered by STEAMVR_SUPPORTED_PLATFORM

or cover the declaration in the header with #if STEAMVR_SUPPORTED_PLATFORM

I removed the SteamVR plugin because the build was telling me to add “PrecompileForTargets = PrecompileTargetsType.Any;” to SteamVR.build.cs and it would keep coming up with the same error, even if I added and saved it. @MaSe87

You can’t compile steamvr for android and your log there was referencing android.

I tried to compile and it can be achieve. Only compile and linking tested. Haven’t actually run to see if something crashes. Changes are in fork

Although the purpose of including the plugin on Android is not clear to me.

is there a way to set relative or add offset to “VrReplicatedCamera” height? So far I did try to add with Tick Relative Location or AddOffset but with no success.

The capsule component has an offset variable that you can set to it.

Edit Also there is a CustomOffset var in the parent relative attachment if you want to change a mesh height or something. And the Netsmoother itself can be offset to move everything.

It won’t crash with those changes, it jut won’t do anything, i pulled them into main.

Hey, I’m kind of confused on the recommended approach for adding finger tracking (for the Knuckle controllers) to a full-body mesh in 4.25. I thought I read somewhere that the OpenInputPlugin was being replaced by something in 4.25, but I can’t find that information anymore. Do you know what I might be thinking of?

In the end I want finger tracking on a full-body mesh that can potentially work for other hand tracking technologies, like the Oculus Quest’s hand tracking. My character mesh is going to use IK for following the VR headset and controllers. I’m just trying to figure out how I should tackle the finger tracking part.

I’m loving plugin but i’m having issues with teleport whenever I hold a weapon the teleport seems to overlap and I can no longer teleport using the hand holding the weapon i have played with collisions etc but haven’t had any success any advice would be great thank you in advance :slight_smile:

The open input plugin still exists, the input side of it was just removed since the valve implementation is native to the engine now as of 4.24, so it just handles the skeletal part.

As for quest hand tracking, Oculus is generally good at providing their own examples (they have a hand tracking one in their branch) so I generally don’t do as much for their API. I had also held off as I saw a pathway for skeletal tracking being implemented into the engine and figured it would be natively handled eventually, sadly I haven’t seen much progress on that recently (likely due to focus switching to OpenXR which doesn’t have a skeletal extension yet AFAIK).

I’ll note that you can still also just use per finger blends with the curl values from OpenInput on a full body mesh as well.

Make the teleport trace ignore held objects or ignore the channel that the teleport controller traces on.

I’m trying everything … :frowning:

https://i.gyazo.com/e0029179abf794b7…99f975914a.png
e0029179abf794b78654a199f975914a.png

how do I make an auto animation at the door?
Has anybody succeeded and can you give me a solution?

What do you mean auto animation? It opening for you? Just use a door that isn’t simulating physics, or stop it from simulating physics, then your timeline should work fine.

physics is fine, indeed I thank you.
but I’m trying to implement the possibility of having it open by an NPC, so I wanted to open the door automatically, but the door rotates on itself if I apply a rotation.

The physics I need to open the door is beautiful, but my NPC needs an automatic door xD

Now I am following some constraint guide, and I managed to apply an automatic force, but the door opens automatically only if I lower the handle …
I tried to set the variables:

Gripped TRUE
Locked FALSE
Closed FALSE

But nothing …
if I do not lower the handle the automatic rotation does not work

I know I’m disturbing, also because mine is a plus, sorry and thanks anyway for the support of splendid plugin :slight_smile:

Ok, I solved it,
I set up an Angular Motor at Constraint,
I enabled the simulation in “Set Simulate Physics”

and now the door opens automatically.

Thanks anyway for your interest.
Sorry if I disturbed you for a stupid thing :slight_smile:

Sorry, still struggling. Thought I had it.
Have a flight stick for ship (modified “Car”), need to be able to pull trigger on joystick to fire weapons

Switched it to a “Throttle”, which has an Event for On Was Used
But not an event for Use Stopped, which means trigger has to be pulled constantly rather than held down

Different way to approach ?

All grippables have an OnUsed and OnEndUsed in side of them, you would just have to throw public events from your child class to notify outside classes about it. And make sure that it has used flags set of course if using the template.

Alternatively, you could also directly bind to input in the actor and sample inputs yourself.