Thank you for your kind explanation.
Thank you for the explanation. I’m hammering it out now.
Hi. I’m relatively new to Unreal. I have a problem that’s probably very easy to fix. I’ve searched forum but can’t find an answer.
When I try and change an input binding in the template project, it always reverts back to the original mapping when I press Play. I’ve tried deleting the Saved and Intermediate Folders, setting various input config.ini files to read only or renaming them.
It’s not an issue with my engine (4.23) as I can rebind inputs in a new project no problem.
What am I missing?
Thanks
hi , just a quick question on open input plugin: considering steam vr binding only accepts vector2 actions for thumbstick position mapping, how can I bind it to UE4 vector1 axis?
Are you just looking for a touch event?
Hola Tengo problemas para nativizar el “personaje Vive_Pawn”. Tengo la última versión del complemento, estoy compilando para Quest. Todo se compila bien sin nativizar el personaje. Pero al nativizar obtengo estos errores:
/Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(107,22): error: uso del identificador no declarado ‘vr’
UATHelper: Empaquetado (VR (Android) (VR) = vr :: k_ulOverlayHandleInvalid;
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): /Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(111,30): error: uso de ‘undecla’ vr ’
UATHelper: Empaquetado (Android (ASTC)): return VRKeyboardHandle! = Vr :: k_ulOverlayHandleInvalid;
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): /Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(136,19): error: uso de la biblioteca. INVALID_TRACKED_CAMERA_HANDLE ’
UATHelper: Empaquetado (Android (ASTC)): pCameraHandle = INVALID_TRACKED_CAMERA_HANDLE;
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): /Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(140,27): error: uso de ofibib. INVALID_TRACKED_CAMERA_HANDLE ’
UATHelper: Empaquetado (Android (ASTC)): return pCameraHandle! = INVALID_TRACKED_CAMERA_HANDLE;
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): /Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(194,8): identificador: uso de underse vr ’
UATHelper: Empaquetado (Android (ASTC)): estático vr :: ETrackedDeviceProperty VREnumToString (const FString & enumName, valor
uint8 ) UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): / Plugins / VRExpansionPlugin / OpenVRExpansionPlugin / Source / OpenVRExpansionPlugin / Public / OpenVRExpansionFunctionLibrary.h (199,10): error: uso del identificador no declarado ‘vr’
UATHelper: Empaquetado (Android (ASTC)): return vr :: ETrackedDeviceProperty :: Prop_Invalid;
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): /Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(204,10): error: uso de underse vr ’
UATHelper: Empaquetado (Android (ASTC)): return vr :: ETrackedDeviceProperty :: Prop_Invalid;
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): /Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(206,21): error: uso de la biblioteca. vr ’
UATHelper: Empaquetado (Android (ASTC)): return static_cast <vr :: ETrackedDeviceProperty> (FCString :: Atoi ( EnumName));
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): ./Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(701,9): error: uso de la biblioteca. ‘vr’
UATHelper: Empaquetado (Android (ASTC)): estático vr :: Texture_t CreateOpenVRTexture_t (UTexture * Texture)
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): / Plugins / VRExpansionPlugin / OpenVRExpansionPlugin / Source / OpenVRExpansionPlugin / Public / OpenVRExpansionFunctionLibrary.h (703,3): error: uso del identificador no declarado ‘vr’
UATHelper: Empaquetado (Android (ASTC)): vr ::
UATHelper: Empaquetado (Android (ASTC)): ^
UATHelper: Empaquetado (Android (ASTC)): /Plugins/VRExpansionPlugin/OpenVRExpansionPlugin/Source/OpenVRExpansionPlugin/Public/OpenVRExpansionFunctionLibrary.h(703,17): error: uso de la biblioteca. VRTexture '; ¿quiso decir ‘textura’?
UATHelper: Empaquetado (Android (ASTC)): vr :: Texture_t VRTexture;
UATHelper: Empaquetado (Android (ASTC)): ^ ~~~~~~~~
UATHelper: Empaquetado (Android (ASTC)): Texture
UATHelper: Empaquetado (Android (ASTC)): / Plugins / VRExpansionPlugin / OpenVRExpansionPlugin / Source / OpenVRExpansionPlugin /Public/OpenVRExpansionFunctionLibrary.h(701,56): nota: ‘Texture’ declarada aquí
UATHelper: Packaging (Android (ASTC)): static vr :: Texture_t CreateOpenVRTexture_t (UTexture * Texture)
etc …*
puedes verificarlo? ¿O es algo que estoy haciendo mal? No estoy usando el ejemplo, solo he migrado a otro proyecto lo que necesitaba y todo se compila y funciona como se esperaba, pero cuando me naturalizo, recibo estos errores. Gracias:)
nope, joystick X and Y axis
unreal mappings only manage vector1 parameters and have separate events (axys X or Y) while the latest steam vr input dashboard only allows configuring vector2 parameters for joystick position.
steamvr input plugin for unreal has a function that merges unreal parameters called with anyname_X and anyname_Y in one merged parameter anyname.
Following a section from the generated manifest:
“/actions/main/in/anyname_X,anyname_Y X Y_axis2d”: “anyname”
that said I have another question: what’s the easiest way to just get fingers curls without messing up with steam vr input (in other words keeping old legacy controls)? I just want to get finger curls independently from player’s platform (oculu, steam, …)
as usual, thanks in advance!
I believe that the old legacy KnucklesCurl inputs are still functional, its not cross platform though, it is SteamVR only (which can be rift obviously if they actually pass out curl values which I doubt they do).
I haven’t tested them in a long time though as I use the open input stack.
https://i.imgur.com/QAK3Clm.png
As for the axis merging, pretty sure the default beta input does that already as well.
Pushed a new commit live today, some parts of it (melee script) is still unfinished but I wanted to get a lot of the core physics fixes in ASAP before going back and finishing it.
https://vreue4.com/path-notes-4-23?section=physics-and-template-work-10-7-19
@Decriment
I’m really at a loss here and hoping someone can help me out. I had gripping working through my own interface (I kept it in place and confirmed it still works if I switch back to using it) but I’m trying to switch to using plugin.
I set up my character blueprint to execute the Grip Object by Interface node (I confirmed the object I’m grabbing is correctly being passed in as well as the motion controller), but my weapon isn’t gripping. On my weapon blueprint (a simple AK47) I placed a grippable capsule at the weapon grip and set the grip logic script to GS Gun Tools. What else is there that’s needed for the gripping to work? Nothing happens when I try to grip it but I don’t get any errors or anything to help identify what the problem is. I know how to debug blueprints decently well but not C++, so I can’t figure out what happens once the Grip Object by Interface node is executed (I do see it being executed in the blueprint debugger). I set up a Grip event on my weapon and I don’t see THAT being executed, so something must be wrong at the Grip Object by Interface call.
Attached a screenshot to show how I’m calling Grip Object by Interface. The boolean checks are just to check whether it’s the left or right hand that is grabbing the object (I’ve simplified since the time of post, now I just have a single execute node for Grip Object by Interface)
My plugin supports gripping both actors AND components with various reasons to do one or the other. How you are trying to grip there is to pass in an actor without the interface, and the world transform of a component with the interface. The node is failing out because the object you are sending in to grip doesn’t have the interface on it.
In that use case your actual actor would have to implement the interface to grip it with that node.
I did realize though that I forgot to put console debug prints in for that specific node to warn that the passed in object is missing the interface, i’ll add that for clarities sake in the future.
The easiest way for you to fix by the way would be to reparent the base class of your AK (as far back as your inheritance tree goes) to a GrippableStaticMeshActor, then all of the guns down the branch from there would be grippables by default.
Also note, that although the gun tools will function by default, actions like secondary gripping the front of the gun still have to be called by you, I do not automate base controls like that as it would be too limiting for most users. The very latest example template now has gun tools on the example gun and it shows how to use the recoil system with it.
Hmmm… I do have the interface implemented so I’m not sure I follow. My base class is “item” which is just an actor, but with the VRGrip interface on it. From there I have weapon > primary weapon > AK47. Should that not work way?
? You said that you placed a grippable capsule at the weapon grip in your original post? If you implemented the interface manually in a base class then you need to override and fill out all of its functions as well.
Ahhh I see, thank you. The functions are probably it. I might go ahead and just reparent my base class like you originally suggested. I assume a GrippableActor should work instead of GrippableStaticMesh? Some of my items have a static mesh and others have a skeletal (though I do plan to go skeletal for all of them eventually).
Edit: Not having luck here still. I made a totally new blueprint to try and just get working to figure out what I’m doing wrong and I can’t get even the new blueprint to grip. I made a GrippableActor BP and added a grippable static mesh to it. Neither Grip Actor nor Grip Object are working for me (same as before, the Grip node gets executed but the On Grip event on the new BP object doesn’t seem to fire). I can’t seem to find the pre-built template for 4.22, is there an archive of pre-built packages somewhere?
Grippable actor is just for that case yes, however if you are going to be multiplayer at some point you may want to have two separate bases, one based on skeletal mesh and one based on static, as the engines replication does not actually handle some of the mesh stuff when just adding the components to a base actor instead of using the built actor for each of them.
In singleplayer it wouldn’t really matter ever.
You might want to check out the tutorial video that a community member made off of my “basic gripping” text overview.
Also if you want a specific version of the engine on one of the repositories, you can go to downloads and switch to branches and download the locked version of your specific engine version: https://bitbucket.org//vre…/?tab=branches
Keep in mind as well that the OnGrip event is going to fire on the root in that case, component gripping has precedence as it lets you grip child components in an actor. The parent actor would be receiving OnChildGripped with that setup. There is generally no reason to ever have both the root and the actor itself be a grippable class. You would generally have the root be normal, and then sub components can be additionally grippable over it.
Ah man. Thank you for sharing that video and the info on the build specific downloads. I searched all around for something like and couldn’t find it. I’m going to suggest that fellow that he rename the video from VREP to VR Expansion Plugin (or at least add that to the name) to help others find it more easily. I intend to support you shortly! I did get the VR character working nicely with locomotion and a little bit of animation including crouching and proning (not sure about the replication working yet).
www.vreue4.com under the documentation tab has tutorial videos now, he is WIP on them so they are fairly new (and only two so far). I understand that a lot of users prefer video over text based but that isn’t exactly my forte.
I’ve been developing on the Oculus Quest and seem to be getting random crashes without any indication as to what it could be. I’ve setup several different tests on both Unreal 4.22 and 4.23 but I still get random crashes that send the player back to the Oculus dashboard. I’ve also setup the same tests without the VRE plugin and things are very stable.I know you are not directly developing for the Android platforms but would you have any idea as to what it could be or what I could try out to prevent crashing?
If using the template there are some things that don’t play perfectly with the quest (namely some of the more intensive physics assets like the car). You’ll have to profile though to really know what it going on.
I would follow the Android Device Monitor instructions in Oculus article to get some info back from the device.
https://developer.oculus.com/blog/de…for-mobile-vr/
You can feel free to PM me the crash information afterwards if it is plugin related. I have quite a few plugin users on Quest without issues currently so it would either be something esoteric or an actual problem with an implementation you specifically have.