Announcement

Collapse
No announcement yet.

VR Expansion Plugin

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Originally posted by 503 Development View Post
    mordentral - I just wanted to say thank you. We are a small studio and we spent weeks writing logic and then we finally just tested your plugin ... so much of the core logic is done so well in your plugin that we decided to adopt it. Aside from that, I was highly amused by your "VR Expanion 02 - Gripping Fundamentals" video tutorial, specially the part where you said, "Oh, well, bye sphere, ok". Maybe I am just a geek but I laughed hard. Thank you.
    Those videos aren't actually made by me, you can thank community member Raven for his humorous commentary.


    Consider supporting me on patreon

    My Open source tools and plugins
    Advanced Sessions Plugin
    VR Expansion Plugin

    Comment


      Not necessarily the most important thing, but I am trying to make my game as handicap accessible as possible, so I was attempting to add a sort of simulated crouching toggle feature similar to what exists in Boneworks (except a toggle as opposed to smooth crouching) for people like my father who are wheelchair bound and unable to fully "crouch" in a game. Currently I'm able to change the VRCapsuleOffset Z Value and scale the root capsule to get an effect similar to what I want, but I wasn't sure if this is the best way to achieve this and what sort of issues this may create. I'm not too worried about players using this function to cheat as my game will be single player or co-op. I'd appreciate anyone's input.

      Comment


        Originally posted by Lone_Rebel15515 View Post
        Not necessarily the most important thing, but I am trying to make my game as handicap accessible as possible, so I was attempting to add a sort of simulated crouching toggle feature similar to what exists in Boneworks (except a toggle as opposed to smooth crouching) for people like my father who are wheelchair bound and unable to fully "crouch" in a game. Currently I'm able to change the VRCapsuleOffset Z Value and scale the root capsule to get an effect similar to what I want, but I wasn't sure if this is the best way to achieve this and what sort of issues this may create. I'm not too worried about players using this function to cheat as my game will be single player or co-op. I'd appreciate anyone's input.
        You should be able to call the normal character crouch commands and then just offset the tracking root (the net smoother) downwards by the difference. Its much easier being single player as that will just work, with multiplayer it would likely have to be a custom move action.


        Consider supporting me on patreon

        My Open source tools and plugins
        Advanced Sessions Plugin
        VR Expansion Plugin

        Comment


          Hi , I have a skeletal mesh of a right hand and I just apply a setworldscale (1,1,-1) to create my left hand. Everything is working perfectly fine in the VR preview editor, but in my packaged game the left hand mesh doesn't follow the rotation of my motion controller (https://streamable.com/9wtgi). I tried a different mesh and it doesn't change anyting. I don't understand why it occurs only in the packaged game. I am using UE4.23. Any clues ? Thanks
          Last edited by Batlord; 02-05-2020, 11:57 AM.

          Comment


            TL;DR

            How I rotate smooth with the motion controller(s) in the playable demo build ?

            Comment


              Originally posted by Batlord View Post
              Hi , I have a skeletal mesh of a right hand and I just apply a setworldscale (1,1,-1) to create my left hand. Everything is working perfectly fine in the VR preview editor, but in my packaged game the left hand mesh doesn't follow the rotation of my motion controller (https://streamable.com/9wtgi). I tried a different mesh and it doesn't change anyting. I don't understand why it occurs only in the packaged game. I am using UE4.23. Any clues ? Thanks
              That looks like the broken transform issue from a visual studio 2019 version that was bad and wasn't correctly handling transforms. I don't think it was fixed until 4.24 / if visual studio had another update after that.


              Consider supporting me on patreon

              My Open source tools and plugins
              Advanced Sessions Plugin
              VR Expansion Plugin

              Comment


                Originally posted by Jokerminator View Post
                TL;DR

                How I rotate smooth with the motion controller(s) in the playable demo build ?
                Call PerformMoveAction_SnapTurn, and pass in a delta value

                or if it isn't multiplayer, you can be safe just calling SetActorRotationVR with whatever you want.


                Consider supporting me on patreon

                My Open source tools and plugins
                Advanced Sessions Plugin
                VR Expansion Plugin

                Comment


                  Hey i got this when i try to upload on Oculus Store:

                  ERROR: The package contains DLL libraries that are known to cause issues when running on the Oculus platform. These files must be removed prior to uploading:
                  F:\Users\Nathan\Downloads\Pétanque VR\WindowsNoEditor\Engine\Binaries\ThirdParty\OpenVR\OpenVRv1_5_17\Win64\openvr_api.dll
                  F:\Users\Nathan\Downloads\Pétanque VR\WindowsNoEditor\Engine\Binaries\ThirdParty\Steamworks\Steamv142\Win64\steam_api64.dll
                  F:\Users\Nathan\Downloads\mordentral-vrexppluginexample-a6382dd206df\Plugins\VRExpansionPlugin\OpenVRExpansionPlugin\Binaries\Win64\UE4Editor-OpenVRExpansionPlugin.dll
                  F:\Users\Nathan\Downloads\mordentral-vrexppluginexample-a6382dd206df\Saved\StagedBuilds\WindowsNoEditor\Engine\Binaries\ThirdParty\OpenVR\OpenVRv1_5_17\Win64\openvr_api.dll
                  F:\Users\Nathan\Downloads\mordentral-vrexppluginexample-a6382dd206df\Saved\StagedBuilds\WindowsNoEditor\Engine\Binaries\ThirdParty\Steamworks\Steamv142\Win64\steam_api64.dll

                  Can anyone help me?

                  Comment


                    Originally posted by POWERGAMER PRO View Post
                    Hey i got this when i try to upload on Oculus Store:

                    ERROR: The package contains DLL libraries that are known to cause issues when running on the Oculus platform. These files must be removed prior to uploading:
                    F:\Users\Nathan\Downloads\Pétanque VR\WindowsNoEditor\Engine\Binaries\ThirdParty\OpenVR\OpenVRv1_5_17\Win64\openvr_api.dll
                    F:\Users\Nathan\Downloads\Pétanque VR\WindowsNoEditor\Engine\Binaries\ThirdParty\Steamworks\Steamv142\Win64\steam_api64.dll
                    F:\Users\Nathan\Downloads\mordentral-vrexppluginexample-a6382dd206df\Plugins\VRExpansionPlugin\OpenVRExpansionPlugin\Binaries\Win64\UE4Editor-OpenVRExpansionPlugin.dll
                    F:\Users\Nathan\Downloads\mordentral-vrexppluginexample-a6382dd206df\Saved\StagedBuilds\WindowsNoEditor\Engine\Binaries\ThirdParty\OpenVR\OpenVRv1_5_17\Win64\openvr_api.dll
                    F:\Users\Nathan\Downloads\mordentral-vrexppluginexample-a6382dd206df\Saved\StagedBuilds\WindowsNoEditor\Engine\Binaries\ThirdParty\Steamworks\Steamv142\Win64\steam_api64.dll

                    Can anyone help me?
                    You need to disable the OpenVR plugin and the steam subsystem plugin.

                    Oculus does not allow steam binaries in submitted games.


                    Consider supporting me on patreon

                    My Open source tools and plugins
                    Advanced Sessions Plugin
                    VR Expansion Plugin

                    Comment


                      We are running into an issue when utilizing the Oculus Rift S. With the Oculus touch controllers there is a difference in the transforms of the motion controllers between the client and the server. The client notices no discrepancy but the server (and other clients) observes a significant delay in the transforms. This is noticeable as any item that the client holds in their hand does not suffer from the delay which results in the item being offset from the hand. This issue is not experienced when using the Samsung Odyssey + HMD. Although the Samsung Odyssey does suffer if even one client is using the Oculus Rift S. The Unreal Engine version is 4.22.

                      Comment


                        Originally posted by SAFGEN1 View Post
                        We are running into an issue when utilizing the Oculus Rift S. With the Oculus touch controllers there is a difference in the transforms of the motion controllers between the client and the server. The client notices no discrepancy but the server (and other clients) observes a significant delay in the transforms. This is noticeable as any item that the client holds in their hand does not suffer from the delay which results in the item being offset from the hand. This issue is not experienced when using the Samsung Odyssey + HMD. Although the Samsung Odyssey does suffer if even one client is using the Oculus Rift S. The Unreal Engine version is 4.22.
                        There is always going to be a transform delay, so that isn't unexpected. However what IS strange is that you are saying that grips are not following 1:1 with the delayed hands, which doesn't make any sense at all since the grips only move to track the hands on each connection.

                        Are you trying to use full body or arms? It may be mismanaged tick ordering on your animation graph.


                        Consider supporting me on patreon

                        My Open source tools and plugins
                        Advanced Sessions Plugin
                        VR Expansion Plugin

                        Comment


                          Originally posted by mordentral View Post

                          You need to disable the OpenVR plugin and the steam subsystem plugin.

                          Oculus does not allow steam binaries in submitted games.
                          Thanks, it's work now

                          Comment


                            Hi everyone, i'm having an issue with gripping objects. I was following Raven's videos to setup gripping, however i can't grip any object. The have objects have grippable static mesh actor as base class, i also tried to migrate objects over from the example projects( like the potion) i can't grip it either. The line trace breaks on the objects, from there i check the if it implements the vr grip interface. It's true, so i get to the Grip Object by Interface function. I can't debug it any further from BP, any help would be apprecieted, it's driving me crazy haha

                            Click image for larger version

Name:	Untitled3.png
Views:	268
Size:	116.5 KB
ID:	1719121
                            Attached Files

                            Comment


                              Originally posted by Eanir View Post
                              Hi everyone, i'm having an issue with gripping objects. I was following Raven's videos to setup gripping, however i can't grip any object. The have objects have grippable static mesh actor as base class, i also tried to migrate objects over from the example projects( like the potion) i can't grip it either. The line trace breaks on the objects, from there i check the if it implements the vr grip interface. It's true, so i get to the Grip Object by Interface function. I can't debug it any further from BP, any help would be apprecieted, it's driving me crazy haha
                              If its failing on the actual grip node it should be printing to console why it failed. If its not failing on that then its likely gripped but is a physical grip and it doesn't have valid collision or the drop distance is too small and it is automatically dropping right away.



                              Consider supporting me on patreon

                              My Open source tools and plugins
                              Advanced Sessions Plugin
                              VR Expansion Plugin

                              Comment


                                Thank you for putting together this VR plugin with multiplayer capability which resolved many problems we faced. It was working in single-player scenarios without any issue but in multiplayer we ran into a recurring issue that has been randomly causing a crash. The call stack for the crash is below along with the parameters we use for gripping as the issue appears to be caused by gripping/dropping. We are using the 4.23 plugin.
                                Click image for larger version  Name:	MicrosoftTeamsimage-1.png Views:	0 Size:	68.9 KB ID:	1719462

                                Code:
                                VRMULTIPLAYER.exe!UObjectBase::IsValidLowLevel(void) C++
                                VRMULTIPLAYER.exe!FBodyInstance::GetSimplePhysicalMaterial(struct FBodyInstance const *,struct TWeakObjectPtr<class UPrimitiveComponent,struct FWeakObjectPtr>,struct TWeakObjectPtr<class UBodySetup,struct FWeakObjectPtr>) C++
                                VRMULTIPLAYER.exe!ComputeMassProperties(struct FBodyInstance const *,class TArray<struct FPhysicsShapeHandle_PhysX,class TSizedDefaultAllocator<32> >,struct FTransform const &) C++
                                VRMULTIPLAYER.exe!<lambda_b4d83c49273524519a7aea54c54c84b3>::operator()(void) C++
                                VRMULTIPLAYER.exe!FPhysicsCommand_PhysX::ExecuteWrite(struct FPhysicsActorHandle_PhysX const &,class TFunctionRef<void >) C++
                                VRMULTIPLAYER.exe!FBodyInstance::UpdateMassProperties(void) C++
                                VRMULTIPLAYER.exe!<lambda_b4d83c49273524519a7aea54c54c84b3>::operator()(void) C++
                                VRMULTIPLAYER.exe!FPhysicsCommand_PhysX::ExecuteWrite(struct FPhysicsActorHandle_PhysX const &,class TFunctionRef<void >) C++
                                VRMULTIPLAYER.exe!FBodyInstance::UpdatePhysicsFilterData(void) C++
                                VRMULTIPLAYER.exe!FBodyInstance::PostShapeChange(void) C++
                                VRMULTIPLAYER.exe!<lambda_b4d83c49273524519a7aea54c54c84b3>::operator()(void) C++
                                VRMULTIPLAYER.exe!FPhysicsCommand_PhysX::ExecuteWrite(struct FPhysicsActorHandle_PhysX const &,class TFunctionRef<void >) C++
                                VRMULTIPLAYER.exe!FBodyInstance::Weld(struct FBodyInstance *,struct FTransform const &) C++
                                VRMULTIPLAYER.exe!FBodyInstance::SetInstanceSimulatePhysics(bool,bool) C++
                                VRMULTIPLAYER.exe!UGripMotionControllerComponent::SetUpPhysicsHandle(const FBPActorGripInformation & NewGrip, TArray<UVRGripScriptBase *,TSizedDefaultAllocator<32>> * GripScripts) Line 4324 C++
                                VRMULTIPLAYER.exe!UGripMotionControllerComponent::NotifyGrip(FBPActorGripInformation & NewGrip, bool bIsReInit) Line 2344 C++
                                VRMULTIPLAYER.exe!UGripMotionControllerComponent::HandleGripReplication(FBPActorGripInformation & Grip, FBPActorGripInformation * OldGripInfo) Line 344 C++
                                VRMULTIPLAYER.exe!UGripMotionControllerComponent::OnRep_GrippedObjects(TArray<FBPActorGripInformation,TSizedDefaultAllocator<32>> OriginalArrayState) Line 504 C++
                                VRMULTIPLAYER.exe!UGripMotionControllerComponent::execOnRep_GrippedObjects(UObject * Context, FFrame & Stack, void * const Z_Param__Result) Line 134 C++

                                Comment

                                Working...
                                X