Announcement

Collapse
No announcement yet.

VR Expansion Plugin

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

    Originally posted by mordentral View Post
    The template link has all of the blueprints in it for the demo download (demo is just a packaged template).
    I'm sorry but I don't understand. I cannot see the blueprints in the template download. Is there something I have to do before I can open it in UE editor and view your blueprints? I guess my real question was how do I get your project to launch in editor and not as a stand alone game?

    Comment


      Originally posted by waysketch View Post
      I'm sorry but I don't understand. I cannot see the blueprints in the template download. Is there something I have to do before I can open it in UE editor and view your blueprints? I guess my real question was how do I get your project to launch in editor and not as a stand alone game?
      Oh

      You want this: VR Expansion Plugin Example Template

      The very first download is just the template packaged as a demo.

      You will have to follow the setup guide in the OP post as well to compile it, the pre-built binaries zip lags behind the template a bit usually.


      Consider supporting me on patreon

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

      Comment


        Hi Mordentral,

        I`m trying to experience with space environment and to have my character in zero Gravity, I got 2 problems I thought maybe you could help me with
        1) I set my character VR movement reference component to have 0 Gravity scale, this work fine for up and down when I climb but when I try to push to the sides it seems that there is no force and I`m basically stay in place.
        I tried playing with some parameters in the VR movement reference but without luck...
        2) Is it possible to disable the positional tracking? means that if I move in the real work my character would`t move?
        (Would thought to experiment when climbing with zero Gravity)

        Thanks in advance,
        Doron

        Comment


          Originally posted by dcaspi View Post
          Hi Mordentral,

          I`m trying to experience with space environment and to have my character in zero Gravity, I got 2 problems I thought maybe you could help me with
          1) I set my character VR movement reference component to have 0 Gravity scale, this work fine for up and down when I climb but when I try to push to the sides it seems that there is no force and I`m basically stay in place.
          I tried playing with some parameters in the VR movement reference but without luck...
          2) Is it possible to disable the positional tracking? means that if I move in the real work my character would`t move?
          (Would thought to experiment when climbing with zero Gravity)

          Thanks in advance,
          Doron
          Climbing is a directed movement mode, it doesn't obey gravity or have any default movement logic, you directly control the movement. If you want to do zero G you should be turning off the auto step up for climbing (boolean in the movement component).

          Then you should set these:
          DefaultLandMovementMode = Flying
          GravityScale = 0.0
          Modify friction settings to your liking

          For pushing off of things without directly climbing on them, just AddImpulse to the character off of the penetration depth, the rest of it should just "work" with those settings, as when you stop climbing it will enter Falling mode until it touches a floor where it will enter flying mode.

          This will get it working without heavy modifications, if you want a REALLY GOOD low G movement setup there would likely be custom logic you would have to handle to force things like falling all of the time instead of flying after landing on the ground.


          2. This is a VERY BAD idea, it basically creates the running into the wall effect with ANY positional real world movement, I don't directly have support for turning off or range limiting the HMD tracking (at least yet, doing vehicles correctly may require range limiting), with normal characters you would set bLockToHMD to false on the camera, and you could do that with the plugin as well but the capsule will still follow the HMD due to default behavior. You can force it by moving the actor to offset for the HMD movement difference if you really want to test it.......if you don't offset the actor then the hands will be in the wrong location as they are not relative to the HMD but rather relative to the actor root.
          Last edited by mordentral; 06-13-2017, 03:19 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
            Climbing is a directed movement mode, it doesn't obey gravity or have any default movement logic, you directly control the movement. If you want to do zero G you should be turning off the auto step up for climbing (boolean in the movement component).

            Then you should set these:
            DefaultLandMovementMode = Flying
            GravityScale = 0.0
            Modify friction settings to your liking

            For pushing off of things without directly climbing on them, just AddImpulse to the character off of the penetration depth, the rest of it should just "work" with those settings, as when you stop climbing it will enter Falling mode until it touches a floor where it will enter flying mode.

            This will get it working without heavy modifications, if you want a REALLY GOOD low G movement setup there would likely be custom logic you would have to handle to force things like falling all of the time instead of flying after landing on the ground.


            2. This is a VERY BAD idea, it basically creates the running into the wall effect with ANY positional real world movement, I don't directly have support for turning off or range limiting the HMD tracking (at least yet, doing vehicles correctly may require range limiting), with normal characters you would set bLockToHMD to false on the camera, and you could do that with the plugin as well but the capsule will still follow the HMD due to default behavior. You can force it by moving the actor to offset for the HMD movement difference if you really want to test it.......if you don't offset the actor then the hands will be in the wrong location as they are not relative to the HMD but rather relative to the actor root.
            Thanks a lot for you replay!
            I still experience the same problem, basically now that I climb I can "push" myself up I go up infinity unless I grab the box.
            In my test I grab the top box on the right and tried to "push" myself to the left to be "floating" to the left side until I grab a different box or reach a wall.
            But when I try to push myself to the sides (working good with up and down) it seems like there is no force.
            I tried to check what cause this force to be applied when going up and down but I got a bit lost in the blueprints :[
            Hope if you can help or point me in the right direction.
            I hope its clear enough...

            Thanks,
            Doron

            Comment


              Originally posted by dcaspi View Post
              Thanks a lot for you replay!
              I still experience the same problem, basically now that I climb I can "push" myself up I go up infinity unless I grab the box.
              In my test I grab the top box on the right and tried to "push" myself to the left to be "floating" to the left side until I grab a different box or reach a wall.
              But when I try to push myself to the sides (working good with up and down) it seems like there is no force.
              I tried to check what cause this force to be applied when going up and down but I got a bit lost in the blueprints :[
              Hope if you can help or point me in the right direction.
              I hope its clear enough...

              Thanks,
              Doron
              Hmmm, i'm not getting that behavior with the brief test I ran to get you the best settings, on release for me its retaining velocity in all directions like it does anyway for falling. Did you change something about the blueprints from the default template setup? By default it goes into falling after releasing from climbing which retains the velocity you had going.


              I'll note that low grav is interesting enough that I started working on something for directly handling this today.
              Last edited by mordentral; 06-14-2017, 02:28 PM.


              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, have not pushed it to the template yet as I am going to do some more testing, only moved it to the plugin due to a packaging bug that needed fixed.


                Code:
                Added pipeline for replicated movement mode changes that tie in with fSavedMovements
                Does not currently support Custom MovementModes outside of the ones I define.
                SetReplicatedMovementMode()
                
                To get it working correctly with up to 16 total values the Flag_Custom_0 and Flag_Custom_1
                and Flag_Reserved_1 and Flag_Reserved_2 of the saved movement have been taken up. There is room
                for 6 more custom modes to be added to the plugin at a later date.
                
                Added Alpha LowGravMovementMode
                
                Set StepUp to be overriden now that it is supported.
                
                Added EVRConjoinedMovementModes enum that combines the default modes with my custom ones.
                
                Added PostClimbingMovementMode property to climbing settings to set the auto step up
                movement mode switch.
                
                Added boolean SetDefaultPostClimbMovementOnStepUp defaulted to true, if true then
                will auto switch movement mode to the PostClimbingMovementMode value on the auto step up.
                If false the movement mode will need to be manually set instead when OnClimbingStepUp event is called.
                
                Added VRLowGravWallFrictionScale that modifies the speed that you retain when hitting a wall
                in low grav mode, defaulted to 1.0f.
                
                Added VRLowGravIngoresDefaultFluidFriction boolean defaulted to true, when true the low grav
                movement mode will ignore the default Air Fluid Friction that the engine uses. This allows
                low grav to work correctly without changing the default fluid friction, it will still use
                custom fluid frictions otherwise.
                
                Moved inline functions into header for root component to prevent a packaging error
                without removing inlining on them.
                
                Set step up capsule directional influence to only be used with walking movement
                in step up as it does not function with LowGrav / Flying correctly.
                
                Added capsule directional movement influence to VRClimbingStepup for VRCharacter
                
                Set VRClimbingStepUpMultiplier to default of 1.0 now
                
                Fixed step up height issue from today.
                *Edit* Video going over some of the things to better explain them

                Last edited by mordentral; 06-14-2017, 10:13 PM.


                Consider supporting me on patreon

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

                Comment


                  Hi there,

                  Fantastic work by the way but i'm having an issue(?) with teleporting vs what teleporting is like just with the plain UE4 VR template project. In the plain UE4 project you can teleport anywhere you want, not limited by the size of the room scale area. But using this it seems to restrict me to choosing places that would "fit" into the room scale space, is there any way to disable this so i can teleport to intentionally thin locations?

                  Thanks a lot.

                  Comment


                    Originally posted by Degnei View Post
                    Hi there,

                    Fantastic work by the way but i'm having an issue(?) with teleporting vs what teleporting is like just with the plain UE4 VR template project. In the plain UE4 project you can teleport anywhere you want, not limited by the size of the room scale area. But using this it seems to restrict me to choosing places that would "fit" into the room scale space, is there any way to disable this so i can teleport to intentionally thin locations?

                    Thanks a lot.
                    It shouldn't be prevented from anything with the roomscale size, what prevents teleporting is the navigation mesh since the epic teleportation is setup based on navigation.

                    You can press P in the editor to view the navigation mesh in your level and either fix it where its not teleporting by regenerating of altering navigation settings, or throwing out the navigation check all together and teleporting anywhere the end touches.

                    I honestly only have it using epics navigation check because their template had it and I wanted the teleport to be recognizable.


                    Consider supporting me on patreon

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

                    Comment


                      Originally posted by mordentral View Post
                      Hmmm, i'm not getting that behavior with the brief test I ran to get you the best settings, on release for me its retaining velocity in all directions like it does anyway for falling. Did you change something about the blueprints from the default template setup? By default it goes into falling after releasing from climbing which retains the velocity you had going.


                      I'll note that low grav is interesting enough that I started working on something for directly handling this today.
                      Hi,

                      Thanks a lot again!!
                      I took the latest project template and there everything is working now.
                      So its probably related to a change I made, I`ll investigate it later.
                      I`ll continue exterminate but those at the moment this gives me a very nice results, so again thank you!

                      I got a suggestion/Feature request that could be helpful to the users of this template
                      Basically its UI Touch interaction like you could see in Star Track VR game
                      What do you think?

                      Again million thanks for you help and support on this amazing plugin and template!

                      Comment


                        Originally posted by dcaspi View Post
                        Hi,

                        Thanks a lot again!!
                        I took the latest project template and there everything is working now.
                        So its probably related to a change I made, I`ll investigate it later.
                        I`ll continue exterminate but those at the moment this gives me a very nice results, so again thank you!

                        I got a suggestion/Feature request that could be helpful to the users of this template
                        Basically its UI Touch interaction like you could see in Star Track VR game
                        What do you think?

                        Again million thanks for you help and support on this amazing plugin and template!
                        I was considering it after first playing that game, the main problem is of course that it works best WITH IK like they are using as you can pass your hands through the surface and slightly above it and still retain contact with the controls (the IK is "sticky to the surface". Their IK system, while not perfect, is well tuned for the actual interaction part and plays a large role in why it works so well for them.

                        The actual "touch" with widgets capability would be easy to do with either baseline widget interaction components with a very short trace, or extended widget interaction components that implements a touch on hover. 90% of the functionality is already covered in engine by the widget interaction components honestly, with maybe some slight quality of life tweaks.


                        Consider supporting me on patreon

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

                        Comment


                          Bug report: standart Epic`s event UpdateCustomMovement doesn't work with these VRCharacter's classes.

                          Comment


                            Originally posted by Vemaster View Post
                            Bug report: standart Epic`s event UpdateCustomMovement doesn't work with these VRCharacter's classes.
                            Thanks, you were correct, I was missing a Super:: call in PhysCustom. Its fixed (will upload later today), although you'll still have to declare a custom mode past 1 which is the plugins last one currently as I don't call it for index's that the plugin uses already.

                            There is a enum EVRConjoinedMovementModes, that you can use to easily know the correct first index for custom movement modes. I take up the first two slots with Climbing and LowGrav but I filled that structure with additional values of Custom1 - Custom6 for 6 total custom movement modes.

                            Its also the structure used when calling SetReplicatedMovementMode which is a method of setting the movement mode in a way that ties in with the SavedMovement system so the server does it at the same point in the character movement as the client did and supports rollbacks from the server.

                            These changes will be in the commit later today.


                            *Edit* Pushed a commit to the plugin as well as made the testing branch of the template with these changes live

                            Code:
                            Fixed a missing Super:: call in PhysCustom so that the HandleCustomMovement event would
                            fire for blueprint users on custom movements that are not already handled by the plugin.
                            
                            Expanded EVRConjoinedMovementModes enum to include 6 custom movement mode definitions
                            this will make it easier to select a custom movement mode that doesn't overlap with already used
                            values. This also allows SetReplicatedMovementMode to work with those 6 custom movement mode
                            index's for true during movement mode switching without explicit RPCs.
                            
                            Changed the auto step up for climbing to call SetReplicatedMovementMode now instead of
                            directly changing movement mode, this allows it to still function if the server rolls
                            back a move and replays (previously in rare cases it was hanging on climbing as the rollback replay
                            wasn't re-setting the out of climbing mode).
                            Last edited by mordentral; 06-15-2017, 12:17 PM.


                            Consider supporting me on patreon

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

                            Comment


                              Hi there. First of all thank you very much for that nice plugin and contribution.
                              Now to my question (maybe I'm just to stupid to find that right know): Do you have a project available with the plugin and all of its features implemented? Like shown in the videos?

                              I would like to give our students the opportunity to work with it, but they would be overstrained with the implementation, besides the fact that your documentation is awesome. They are art students and not many of them have a programming background. If that's not available I would build it myself.

                              Thanks in advance

                              Comment


                                Originally posted by Thoeme View Post
                                Hi there. First of all thank you very much for that nice plugin and contribution.
                                Now to my question (maybe I'm just to stupid to find that right know): Do you have a project available with the plugin and all of its features implemented? Like shown in the videos?

                                I would like to give our students the opportunity to work with it, but they would be overstrained with the implementation, besides the fact that your documentation is awesome. They are art students and not many of them have a programming background. If that's not available I would build it myself.

                                Thanks in advance
                                The Example Template Project link in the OP post is just that.

                                Second link in the overview
                                https://bitbucket.org/mordentral/vrexpansionplugin

                                Direct link
                                https://bitbucket.org/mordentral/vrexppluginexample


                                Consider supporting me on patreon

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

                                Comment

                                Working...
                                X