Announcement

Collapse
No announcement yet.

VR Expansion Plugin

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

    Originally posted by AlphaWolF View Post
    @mordentral
    I have been trying to figure out how the pickup objects are set up, specifically how they don't pass through objects & walls.
    I am sure they are using a physics handle but looking through the code I cant seem to find how you did it.

    I'm using the same process as a physics handle, but not using an actual physics handle component.

    Its a physx constraint on a kinematic physx actor (not the same as a UE4 actor) and the object itself, its a custom implementation instead of using the component because I had specific requirements and wanted it all handled by the controllers themselves.

    You can achieve "mostly" the same thing with a physics handle component.


    Consider supporting me on patreon

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

    Comment


      4.21.1 has been out for a little bit, and the plugin seems stable, going to move back to some grip script work again. If anyone is playing with multiplayer in 4.21.1 yet please let me know if it is stable, I know that a lot of users stuck with 4.19 and skipped 4.20 so its a two engine version gap on upgrades and a decent amount has changed.


      Consider supporting me on patreon

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

      Comment


        Im getting a problem with both hands being attached to the left controller

        Comment


          Originally posted by Rareden View Post
          Im getting a problem with both hands being attached to the left controller
          Then you either re-attached the mesh component, or you set both controllers to the left hand index.


          Consider supporting me on patreon

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

          Comment


            There is now a beta branch for the GunTools grip script, it aims to provide a bunch of utility for common gun interactions (including a custom late update that allows for full two handed adjustments).

            It is feature incomplete currently, but the Offset hand pivot, recoil instance addition, and a few other utility items are in it already.
            I will probably be moving some of the more advanced two handed grip smoothing features out of the default grip script and into the gun tools one, I doubt that most people have all that much use for them outside of guns.


            Also I recently added a CustomPivotComponent to the motion controller to help people trying to do remote grips (end of laser beam ect).

            The core concept is that you are providing a new component that all gripping is offset from instead of the motion controller itself, and you can enable / disable it at will. I was originally going to make it a grip script to be on a per object basis, but realized that for mobile and 3DOF VR it would be very useful to be a global setting that could just be enabled for remote gripping. The reason this is useful over just using a relative transform that is far away from the controller is that it is easier to move the base point with the end of a laser beam or some other object and allows for full use of center of mass. It also means that you could enable it to just move the pivot point of the motion controller down into the palm more for all grips instead of doing it custom in the gun tools grip script.

            Video going over it
            Last edited by mordentral; 12-13-2018, 10:16 PM.


            Consider supporting me on patreon

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

            Comment


              Is it possible to limit the movement of a gripable static mesh actor to a specific vector. I.E hold a pool cue, and you only want the player to be able to move the cue along the forward vector of the cue when shooting to stop it from straying to the side while shooting

              Comment


                Originally posted by Rareden View Post
                Is it possible to limit the movement of a gripable static mesh actor to a specific vector. I.E hold a pool cue, and you only want the player to be able to move the cue along the forward vector of the cue when shooting to stop it from straying to the side while shooting
                Yes, in 4.20+ you can use the Interactible Settings grip script and turn it on to live restrict movement, or you can switch grip modes while gripping to a CustomGrip and manually apply the restrictions.


                Consider supporting me on patreon

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

                Comment


                  Originally posted by mordentral View Post

                  Yes, in 4.20+ you can use the Interactible Settings grip script and turn it on to live restrict movement, or you can switch grip modes while gripping to a CustomGrip and manually apply the restrictions.
                  Havent watched your overview on how to use grip scrips yet but this is what i have so far, rather dirty.
                  It dosnt seem to want to switch to custom grip on the fly,
                  Video of it : https://youtu.be/obecpmkwkdM

                  Comment


                    Originally posted by Rareden View Post

                    Havent watched your overview on how to use grip scrips yet but this is what i have so far, rather dirty.
                    It dosnt seem to want to switch to custom grip on the fly,
                    Video of it : https://youtu.be/obecpmkwkdM
                    https://mordentral.bitbucket.io/VREx...isionType.html

                    Use that node and set it to custom, then run the logic in EventGripTick and don't tick the actor itself (grip tick is always after the motion controller and doesn't require the extra actor tick to be enabled). You can still access the GripInfo as well to get where the expected relative position is for the grip.

                    Like I said though, if you are in 4.20+ you can make a grip script that does this directly, and just flip a bool on the script.


                    Consider supporting me on patreon

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

                    Comment


                      Originally posted by mordentral View Post

                      https://mordentral.bitbucket.io/VREx...isionType.html

                      Use that node and set it to custom, then run the logic in EventGripTick and don't tick the actor itself (grip tick is always after the motion controller and doesn't require the extra actor tick to be enabled). You can still access the GripInfo as well to get where the expected relative position is for the grip.

                      Like I said though, if you are in 4.20+ you can make a grip script that does this directly, and just flip a bool on the script.
                      Yea seems like the scripts are the way to go, but after messing with it i found a couple problems(Probably me doing it wrong). Firstly the intractable script limits apply to the actor world axis rather than the child static mesh so limiting it on X an Y dosnt allow the cue to only move along the relative Z axis of its length. And for some reason if i use a script on it, afterwards the secondary grip function no longer works, ive tried reverting the whole BP back to its initial state but it still wont function.

                      Comment


                        Originally posted by Rareden View Post

                        Yea seems like the scripts are the way to go, but after messing with it i found a couple problems(Probably me doing it wrong). Firstly the intractable script limits apply to the actor world axis rather than the child static mesh so limiting it on X an Y dosnt allow the cue to only move along the relative Z axis of its length. And for some reason if i use a script on it, afterwards the secondary grip function no longer works, ive tried reverting the whole BP back to its initial state but it still wont function.
                        The axis limiting is a world transform override for the interactible script, I forgot that I didn't have it as a modifier.

                        Regardless making your own grip script for it would be best, You can create a BP class from (base grip script BP), set its type to "ModifyTransform" and then clamp the movement as you wish when active. Same basic logic as custom grips except cleaner since it is toggled at will, can be added to any object, and just works with any of the grip types.


                        Consider supporting me on patreon

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

                        Comment


                          Hi!

                          Thanks for the Plugin, I've put it to quite some use but currently I am having issues with Widget controlling. By default, widget buttons are used with Trigger button but I would need to change it so, that it can be controlled with Trackpad Up (Face Button 1). I went deep into this and found (screenshot) that the issue is in BP_Teleport_Controller > If Over Widget Use and specifically there in Widget Interaction > Is Over Intractable Widget which is always false, when other button that Trigger is used. Help would be appreciated, how can I change it so that widget can be triggered with other button than the default Trigger controller. Many thanks!

                          Click image for larger version

Name:	uetrigger.jpg
Views:	7
Size:	476.3 KB
ID:	1563797
                          Last edited by TheoT; 12-19-2018, 03:59 AM.

                          Comment


                            Originally posted by TheoT View Post
                            Hi!

                            Thanks for the Plugin, I've put it to quite some use but currently I am having issues with Widget controlling. By default, widget buttons are used with Trigger button but I would need to change it so, that it can be controlled with Trackpad Up (Face Button 1). I went deep into this and found (screenshot) that the issue is in BP_Teleport_Controller > If Over Widget Use and specifically there in Widget Interaction > Is Over Intractable Widget which is always false, when other button that Trigger is used. Help would be appreciated, how can I change it so that widget can be triggered with other button than the default Trigger controller. Many thanks!

                            Click image for larger version

Name:	uetrigger.jpg
Views:	7
Size:	476.3 KB
ID:	1563797
                            That doesn't have anything to do with the button that is used, its just calling a utility function TriggerGripOrDrop from whatever the keybinding currently is. Then that utility function checks IsOverWidgetUse is valued true or not, you may have missed sending in the boolean stating the value of the input though (true/false)?

                            I'll note that in the current template it does also use IsOverFocusableWidget as the webbrowserwidget doesn't match IsOverInteractibleWidget.


                            Consider supporting me on patreon

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

                            Comment


                              Added a new teleportation method in 4.21, DeltaTeleportation, it is an attempt to clean up physical grips on simulating bone chains when teleporting.

                              Like such
                              https://i.imgur.com/ZxX6qoD.gifv

                              It still needs some debugging work, but its already showing better results.
                              Last edited by mordentral; 12-20-2018, 03: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

                                The axis limiting is a world transform override for the interactible script, I forgot that I didn't have it as a modifier.

                                Regardless making your own grip script for it would be best, You can create a BP class from (base grip script BP), set its type to "ModifyTransform" and then clamp the movement as you wish when active. Same basic logic as custom grips except cleaner since it is toggled at will, can be added to any object, and just works with any of the grip types.
                                Would it be better to do that in c++ or possible in a child BP class of the GS. i had a glance through the interactiblesSettings.h and cpp, im no master coder though.
                                Confused as how best to tick or execute the actions within the script in blueprint
                                Last edited by Rareden; 12-20-2018, 09:37 PM.

                                Comment

                                Working...
                                X