Announcement

Collapse
No announcement yet.

VR Expansion Plugin

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

  • Originally posted by SycoZ View Post

    Thanks for the quick reply! I'll change it to the main character in that case.
    Don't miss that it is fixed already though . The simple character just lacks a few features that the advanced one provides, but is easier to understand for the user and upkeep for me (this is the second bug reported on it since it was made even though I have overhauled the main character multiple times and changed the base character backend a ton).

    I probably mis-stated there, it is multiplayer capable, but I run most of my iteration on the main character, since the simple char is so stable it gets less testing.

    Also as you saw, walking around when the server is correcting your position can roll back your actual location, which is why I feel the advanced character is better suited to multiplayer.

    With the advanced character you won't get positional rollbacks from walking, only locomotion or collision with things, so in high packet loss situations it won't induce as much nausea.
    Last edited by mordentral; 10-18-2017, 03:35 PM.


    Consider supporting me on patreon

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

    Comment


    • Originally posted by mordentral View Post
      Unless you turned off the VR plugin or are trying to run two editor instances at once it should work when stereo is enabled/turned on (you may have forgotten this step?).
      That was the step. Never knew such a setting (Instanced Stereo, in Project Settings) existed. Thanks a lot!

      Edit: Scratch that. Didn't work. After enabling Instanced Stereo and restarting, seems SteamVR's saying UE4Editor isn't responding. Restarted again, making sure no other instances were running. That previous error went away, but the Camera/HMD is still stuck at the bottom of the capsule.


      The ss shows what it looks like when the controllers are off. Turning 'em on, they disappear - probably are moving to their proper position relative to the capsule. (I'm working in a really confined space where the ground is out of sight of the sensors, so I can't verify if they're getting tracked).

      I've verified the proper character is spawning at least.
      Attached Files
      Last edited by kusokuso1; 10-18-2017, 09:24 PM.

      Comment


      • Originally posted by kusokuso1 View Post

        That was the step. Never knew such a setting (Instanced Stereo, in Project Settings) existed. Thanks a lot!

        Edit: Scratch that. Didn't work. After enabling Instanced Stereo and restarting, seems SteamVR's saying UE4Editor isn't responding. Restarted again, making sure no other instances were running. That previous error went away, but the Camera/HMD is still stuck at the bottom of the capsule.


        The ss shows what it looks like when the controllers are off. Turning 'em on, they disappear - probably are moving to their proper position relative to the capsule. (I'm working in a really confined space where the ground is out of sight of the sensors, so I can't verify if they're getting tracked).

        I've verified the proper character is spawning at least.
        Meant the EnableHMD or stereo on console command.


        Consider supporting me on patreon

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

        Comment


        • Originally posted by mordentral View Post

          Meant the EnableHMD or stereo on console command.
          Thanks a lot for the reply. I don't recall seeing a step-by-step for the bare minimum requirements of getting a VRcharacter class up and running (I mean, just have it take control of the HMD and MCs).

          Downloaded the default template 34f41b9 built it and tried to run it, but even then I'm getting the 2d character by default (can move around WASD style and jump, but that's it). I'm running 4.17.2 and I haven't updated SteamVR in a little over a month. Could that be a problem?

          Btw, I tried sticking that "EnableHMD" console command on begin play in the level blueprint of the template, but the HMD still isn't getting recognized.
          I'll see if I there's a SteamVR update.

          Comment


          • Originally posted by kusokuso1 View Post

            Thanks a lot for the reply. I don't recall seeing a step-by-step for the bare minimum requirements of getting a VRcharacter class up and running (I mean, just have it take control of the HMD and MCs).

            Downloaded the default template 34f41b9 built it and tried to run it, but even then I'm getting the 2d character by default (can move around WASD style and jump, but that's it). I'm running 4.17.2 and I haven't updated SteamVR in a little over a month. Could that be a problem?

            Btw, I tried sticking that "EnableHMD" console command on begin play in the level blueprint of the template, but the HMD still isn't getting recognized.
            I'll see if I there's a SteamVR update.
            If you are running VRPreview its automatically called anyway in editor. But if you are running VR preview the HMD is already detected regardless.

            I don't know what you are having as an issue here, but it is unrelated to the plugin, I don't control or handle the VR engine plugins.


            Consider supporting me on patreon

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

            Comment


            • Posting excerpts from a conversation I was having in the patreon discord for general public knowledge. Goes over some of the 4.18 secondary grip additions that I added. I will go over things in more detail in a video and patch notes later, but figured since I already wrote this, might as well copy and paste it here.

              the new 4.18 second hand smoothing and distance based influence might be good for gun interactions
              its not proximity
              though proximity would be easier to handle manually now

              I added "SecondaryGripDistance" which is the distance of the secondary grip from its initial grip point IF it wasn't rotating to meet it

              I use that for the distance based influence but it was primarily intended to make proximity ungrip easy to achieve

              say your main hand is pointing the gun forward with the distance influence the farther the second hand is from where it should be on the gun, the less the gun rotates towards it with a deadzone for full control so you have to actually rotate the rear hand for full control and line the gun up more

              but the same logic applies to ungripping with proximity, if the secondary is too far from where it should be, drop the secondary grip

              deadzone is distance within which there is full control, then there is a falloff scaler where after the deadzone it lerps from full control to 0 control with the secondary hand

              arcadey games can keep the always locked secondary which is more fun for quick shooting gameplay, more realistic ones can apply distance influence and proximity grips to enforce lining up shots properly is the idea.


              Then the secondary smoothing change is that before I used to just run smoothing across the last frame to this one, so only very minor smoothing, it was a lackluster approach that no-one used.

              However, since I added the VREditor 1 Euro Low Pass implementation in for the laser beam recently, I repurposed that algorithm with different low pass settings and am now using it to drive the secondary hand smoothing giving a much better result than normal running averages or lerping.

              *Edit* and to be clear, yes the distance based influence is based on the original concept that Node talked about, it is a good idea and was easy enough to support so I added it in.
              Last edited by mordentral; 10-19-2017, 12:58 PM.


              Consider supporting me on patreon

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

              Comment


              • Originally posted by mordentral View Post

                If you are running VRPreview its automatically called anyway in editor. But if you are running VR preview the HMD is already detected regardless.

                I don't know what you are having as an issue here, but it is unrelated to the plugin, I don't control or handle the VR engine plugins.
                Dang it, sorry. I failed to enable VR Preview...

                Maybe the newest version of the plugin example template doesn't have it enabled by default? I'm not saying it should, but I'm pretty sure older versions of the template (up to a month ago) had VR Preview set as default, because I've never had to enable it.

                Thanks for the additional info about VR preview and HMD detection.

                Comment


                • Originally posted by kusokuso1 View Post

                  Dang it, sorry. I failed to enable VR Preview...

                  Maybe the newest version of the plugin example template doesn't have it enabled by default? I'm not saying it should, but I'm pretty sure older versions of the template (up to a month ago) had VR Preview set as default, because I've never had to enable it.

                  Thanks for the additional info about VR preview and HMD detection.
                  I don't control vr preview either

                  That is an editor feature that is automatically enabled when it detects an HMD, but it normally shows your last used mode, so it likely showed VR preview for you before because that is all you ever launched it with.


                  Consider supporting me on patreon

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

                  Comment


                  • Maybe someone has any ideas?
                    Originally posted by KelbornKad View Post
                    Hi, Mordentral!

                    Firstly, you've made realy great work! I've downloaded the plugin for physical grip, but found many interesting things in it.
                    Unfortunately, I occured a bug that crashes the editor (2017-10-10 commit). I'm not sure about what causes the crash, but it always crashes when I use OnChildGripRelease on specific blueprint. Also I've detached my bp code from release event to be on the safe side, but it didn't help.
                    Output:
                     
                    Spoiler


                    Blueprint VRGripInterface is:
                     
                    Spoiler

                    Upd: Ok, I solved the problem. Collision complexity was set to "Use complex as simple" in my mesh. Everything works fine after setting "Project default". But still it looks like a bug.
                    Last edited by KelbornKad; 10-20-2017, 06:48 AM. Reason: Solved

                    Comment


                    • Originally posted by KelbornKad View Post
                      Maybe someone has any ideas?



                      Upd: Ok, I solved the problem. Collision complexity was set to "Use complex as simple" in my mesh. Everything works fine after setting "Project default". But still it looks like a bug.
                      its not a "crash" per say, its an assertion thrown by the engine (something was checked to "ensure" it is valid and was found to not be).

                      In this case it is: check(NewMass > 0.f);

                      The engine tried to calculate a mass for the object and couldn't get a valid one (not a positive number) and asserted out with a warning.

                      This is very unlikely to be a bug with the plugin and more likely to be a issue with your objects physics setup, negative mass scaling, setting it to 0 mass somehow (boverride clamps it to a min so it shouldn't happen there).

                      I'll still run some checks just in case it is my setup doing it, but its unlikely to be involved.


                      *Edit* Yeah its not the plugin, its what can happen when trying to simulate a trimesh collision body

                      Code:
                      I'm afraid this is a (sensible) limitation of the physics engine. It does not supporting using a triangle mesh as the collision for a dynamic object, it would be very expensive, and is hard to calculate mass properties for etc.
                      
                      more ▼
                      
                      answered Apr 22 '15 at 6:05 AM
                      avatar image
                      JamesG STAFF
                      1.3k ● 8 ● 5 ● 31
                      I tried to get an out for it by checking for valid body instance but it still counts as valid with that enabled. I'll add my own ensure to warn and prevent people from trying to physically pick up a complex as simple body.
                      Last edited by mordentral; 10-20-2017, 08:48 AM.


                      Consider supporting me on patreon

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

                      Comment


                      • Originally posted by mordentral View Post

                        its not a "crash" per say, its an assertion thrown by the engine (something was checked to "ensure" it is valid and was found to not be).

                        In this case it is: check(NewMass > 0.f);

                        The engine tried to calculate a mass for the object and couldn't get a valid one (not a positive number) and asserted out with a warning.

                        This is very unlikely to be a bug with the plugin and more likely to be a issue with your objects physics setup, negative mass scaling, setting it to 0 mass somehow (boverride clamps it to a min so it shouldn't happen there).

                        I'll still run some checks just in case it is my setup doing it, but its unlikely to be involved.


                        *Edit* Yeah its not the plugin, its what can happen when trying to simulate a trimesh collision body

                        Code:
                        I'm afraid this is a (sensible) limitation of the physics engine. It does not supporting using a triangle mesh as the collision for a dynamic object, it would be very expensive, and is hard to calculate mass properties for etc.
                        
                        more ▼
                        
                        answered Apr 22 '15 at 6:05 AM
                        avatar image
                        JamesG STAFF
                        1.3k ● 8 ● 5 ● 31
                        I tried to get an out for it by checking for valid body instance but it still counts as valid with that enabled. I'll add my own ensure to warn and prevent people from trying to physically pick up a complex as simple body.
                        Yeah, that's it. With simple collision works perfectly

                        Comment


                        • Hi, I got the latest plugin version so I had the netsmoother, it's working really well on "launch project", but after packaging I'm getting this error on open:

                          "Missing Dependency, request for NetSmoother but it hasn't been created yet"

                          https://imgur.com/a/BLJ2L

                          Comment


                          • Originally posted by Esteves View Post
                            Hi, I got the latest plugin version so I had the netsmoother, it's working really well on "launch project", but after packaging I'm getting this error on open:

                            "Missing Dependency, request for NetSmoother but it hasn't been created yet"

                            https://imgur.com/a/BLJ2L
                            Could you try re-building out of visual studio for the version you are using and then packaging in editor? Feel like its a mismatch between the editor and your package. That normally happens with non default objects but this object is entirely default.

                            I have packaged and ran several times since adding that in with no issues, but I tend to re-build binaries and intermediates very often.

                            *Edit* I did have netsmoother below the objects that attach to it in the class structure though, I could conceive of a situation where when serializing it gets to that last so the ones attached to it have issues. I re-ordered it and committed.
                            Last edited by mordentral; 10-21-2017, 10:32 AM.


                            Consider supporting me on patreon

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

                            Comment


                            • Pushed a new commit to the plugin repository today

                              Code:
                               Added Epics world locked implementation as an option to the VRStereoWidgets  
                               They are still buggy, but should be included anyway  
                              
                               Added check to ensure that we don't try to physically pick up an object that is using  
                               bUseComplexAsSimple collision.  
                              
                               This will be more obvious as to why it is crashing out that the default Mass > 0.f  
                               warning that is generated normally.  
                              
                               Moved netsmoother up higher in serialization.  
                              
                               Exposed levers bIsLerping to blueprint so things can use it (see new native lever actor  
                               and how it checks it to turn off tick).

                              *Edit* Packaged and pushed live new pre-built binaries
                              Last edited by mordentral; 10-21-2017, 07:40 PM.


                              Consider supporting me on patreon

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

                              Comment


                              • Originally posted by mordentral View Post
                                Pushed a new commit to the plugin repository today

                                Code:
                                Added Epics world locked implementation as an option to the VRStereoWidgets
                                They are still buggy, but should be included anyway
                                
                                Added check to ensure that we don't try to physically pick up an object that is using
                                bUseComplexAsSimple collision.
                                
                                This will be more obvious as to why it is crashing out that the default Mass > 0.f
                                warning that is generated normally.
                                
                                Moved netsmoother up higher in serialization.
                                
                                Exposed levers bIsLerping to blueprint so things can use it (see new native lever actor
                                and how it checks it to turn off tick).

                                *Edit* Packaged and pushed live new pre-built binaries
                                Hi what code would I need to put into my character if I just wanted to be able to work with the VRGrip interface, so if I just wanted to be able to open a drawer of door?

                                Click image for larger version

Name:	grip.JPG
Views:	1
Size:	179.7 KB
ID:	1373701Click image for larger version

Name:	merge.JPG
Views:	1
Size:	213.3 KB
ID:	1373702

                                Comment

                                Working...
                                X