Announcement

Collapse
No announcement yet.

VR Expansion Plugin

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

    Originally posted by mordentral View Post

    Just set that setting to short and use MovementAction_SnapTurn or a custom move action. I need to go in a optimize movement actions so they use the delayed movement processing (FScopedMovement) of the CMC but it works as is.

    Its only snappy with bytes because its not enough precision for the pivot and offset to not be noticeable, FPS games don't require that kind of precision.

    Regardless its a 1 byte difference on repped movement and only happens when it changes, so during turning or smooth movement.
    MovementAction_SnapTurn seems to be not enough reliable for smooth turn: testing it in multiplayer environment, it spams network connection (to turn in fact you are calling that function repeatedly) until player starts to stutter and move in circle instead of rotating in place. A start/stop smoothing turn function will be definitely better. Should I code it by myself or you have any other suggestions?

    as usual, many thanks and keep up the good work!
    Last edited by Curs0; 04-01-2018, 08:01 AM.

    Comment


      Hi Mordentral, i'm been offline a long time for personal reasons, it's all fine now. Whatever, i got a few questions...

      With Run Euro Smooth, we can change Euro Smooth filter in a Grippable Mesh on the fly? pressing a button, trigger or something? I see your video and readed the wiki. But, Run Euro Smooth return a smoothed vector, but how we apply it? is there any function to do on the fly as your video with the slider? I work with multiplayer, and i want to give to the user a way to smooth the controllers. As mouse sensivity. In a certain situations (Sniper Rifle)

      And if you can, fix my title, es ViarWarfare, not warefare. Thanks for all, this plugin is great tool and is become bigger each time.

      Regards,
      Aidan.
      Viar Warfare - My first VR Game
      I'm Spanish, sorry about my english, i working on it every day.

      Comment


        Originally posted by Curs0 View Post

        MovementAction_SnapTurn seems to be not enough reliable for smooth turn: testing it in multiplayer environment, it spams network connection (to turn in fact you are calling that function repeatedly) until player starts to stutter and move in circle instead of rotating in place. A start/stop smoothing turn function will be definitely better. Should I code it by myself or you have any other suggestions?

        as usual, many thanks and keep up the good work!
        Its not a network spam issue, it only adds a quantized vector to the movement list, it is because rollback of characters doesn't include rotation so if you have a missed packet that isn't eventually played back then it doesn't receive the location change from an offset rotation, only the rotation itself (characters are client side rotation authoritative). I have a branch to look at that, but will be a major overhaul of sections of the default engine character.

        Start / Stop is better anyway for smooth turning, however it should be queued in with the movement system or it will be out of sync. You can use a custom movement action for that, pass start/stop as one of the FVector parameters and use the rot for speed. At the end of the rotation it should also send a syncing rot to the server. I may add this as a built in movement action in the future, but i'll have to do some testing.

        *Edit* I'll note that fixing the rollback code was going to be my original solution to this as it being wrong in the first place irks me (no need for rotation rollback with FPS pawns because a capsule is the same no matter the rotation). However a short term solution of a toggle is likely better anyway and would prevent incorrect usage.
        Last edited by mordentral; 04-01-2018, 09:32 AM.


        Consider supporting me on patreon

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

        Comment


          Originally posted by Aidan Puche View Post
          Hi Mordentral, i'm been offline a long time for personal reasons, it's all fine now. Whatever, i got a few questions...

          With Run Euro Smooth, we can change Euro Smooth filter in a Grippable Mesh on the fly? pressing a button, trigger or something? I see your video and readed the wiki. But, Run Euro Smooth return a smoothed vector, but how we apply it? is there any function to do on the fly as your video with the slider? I work with multiplayer, and i want to give to the user a way to smooth the controllers. As mouse sensivity. In a certain situations (Sniper Rifle)

          And if you can, fix my title, es ViarWarfare, not warefare. Thanks for all, this plugin is great tool and is become bigger each time.

          Regards,
          Aidan.
          There is a boolean in advanced grip settings to turn on the smoothing for a double handed grip, it uses the global settings to save performance but you can apply the amount of smoohing seperatly.


          Consider supporting me on patreon

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

          Comment


            if i wanted to splice in a actor has tag command to determine climbable and non-climbable. where and how would you do so.

            Comment


              Originally posted by mordentral View Post
              I may add this as a built in movement action in the future, but i'll have to do some testing.
              We'll be glad to help testing

              Comment


                Originally posted by sphinix257 View Post
                if i wanted to splice in a actor has tag command to determine climbable and non-climbable. where and how would you do so.
                In the IsObjectClimbable function, override it, check HasTag

                *Edit* actually, forgot, the gameplay tag interface isn't blueprintable, you'd have to have a base class to check.


                Consider supporting me on patreon

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

                Comment


                  Originally posted by mordentral View Post

                  In the IsObjectClimbable function, override it, check HasTag

                  *Edit* actually, forgot, the gameplay tag interface isn't blueprintable, you'd have to have a base class to check.
                  so what if i was creating a blueprint for each climbable object, and using collision messes inside it to highlight very specific spots on a mesh that were gripable. like only being able to grab the bars on a ladder. openings in a wall, or the top of a handrail.

                  also noob question. i was importing my gun models in and playing with it. and im on a bit of a run as for learning on my own as to how to handle weapons. but somehow im not able to figure out how to check the overlap from my hand and a button on the gun. how should i handle that
                  Last edited by sphinix257; 04-01-2018, 09:52 PM.

                  Comment


                    Originally posted by sphinix257 View Post

                    so what if i was creating a blueprint for each climbable object, and using collision messes inside it to highlight very specific spots on a mesh that were gripable. like only being able to grab the bars on a ladder. openings in a wall, or the top of a handrail.

                    also noob question. i was importing my gun models in and playing with it. and im on a bit of a run as for learning on my own as to how to handle weapons. but somehow im not able to figure out how to check the overlap from my hand and a button on the gun. how should i handle that
                    Then it is much easier, just make a collision volume component and cast to it in the IsObjectClimbable function, return true/false if it was one.


                    You need to check overlap settings, the gun may actually be overlapping the button, or your hand may not be set to overlap it correctly. Check your collision channels, and print out overlaps on it if you want a realtime visual indicator.


                    Consider supporting me on patreon

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

                    Comment


                      I have been using this plugin for a student project recently however I have been unable to get the template open on my machine. If its not too much to ask could someone who has the template please screenshot the climbing blueprint so that I can use it as reference moving forward? Would be very much appreciated.

                      Comment


                        Originally posted by mordentral View Post

                        Then it is much easier, just make a collision volume component and cast to it in the IsObjectClimbable function, return true/false if it was one.


                        You need to check overlap settings, the gun may actually be overlapping the button, or your hand may not be set to overlap it correctly. Check your collision channels, and print out overlaps on it if you want a realtime visual indicator.
                        well i was more confused as to how to get a refercence of the motion controllers into the blue print for the gun. i can figure out the overlap. but i couldnt find the reference

                        Comment


                          Originally posted by sphinix257 View Post

                          well i was more confused as to how to get a refercence of the motion controllers into the blue print for the gun. i can figure out the overlap. but i couldnt find the reference
                          IsHeld returns holding controller, also OnGrip sends it in.

                          Not sure why you need that for the button though.


                          Consider supporting me on patreon

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

                          Comment


                            Originally posted by mordentral View Post

                            IsHeld returns holding controller, also OnGrip sends it in.

                            Not sure why you need that for the button though.
                            im still learning so i could be doing it wrong. but would have figured i needed to check for a collision or overlap and check if it were items i want to alow to press the button. = hands.

                            currently its just hands. but soon i would replace it with ammo clips so i can reload properly. but i would need a button like code for a bolt release also.
                            Last edited by sphinix257; 04-02-2018, 11:43 PM.

                            Comment


                              Originally posted by sphinix257 View Post

                              im still learning so i could be doing it wrong. but would have figured i needed to check for a collision or overlap and check if it were items i want to alow to press the button. = hands.

                              currently its just hands. but soon i would replace it with ammo clips so i can reload properly. but i would need a button like code for a bolt release also.
                              You can just set a collision channel to control that if you want, or verify yes, but it would be better as a VRButtonComponent child class that handles it for you, not part of the gun blueprint itself.

                              Then the button just passes on the pressed / released events to the gun and the gun doesn't have to worry about any of that.


                              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 tonight, while looking into some server rollback changes I ran into a bug I had introduced recently into the movement actions system.

                                Code:
                                Whoops!
                                
                                Fixing some values not setting (replicating) after converting the movement action 
                                system to an array of actions.


                                Consider supporting me on patreon

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

                                Comment

                                Working...
                                X