Announcement

Collapse
No announcement yet.

VR Expansion Plugin

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

    I thought "rep grip settings" will also replicate grip scripts' AdvSecondarySettings, but it doesn't.
    what's the best way to replicate secondary grip influence (in a client auth situation) since you moved this setting to grip script?

    thanks!

    edit: even if secondary grip influence is set as default value in a grippable bp (e.g. secondary grip shouldn't influence pistols), this setting is ignored server-side when the client grabs it (host take into account client secondary grip, client dont).
    That said we need to change it at runtime before gripping and sync host as well as other clients (we have an options that let users disable secondary grip influence).
    Last edited by Curs0; 10-22-2019, 06:51 PM.

    Comment


      Originally posted by Curs0 View Post
      I thought "rep grip settings" will also replicate grip scripts' AdvSecondarySettings, but it doesn't.
      what's the best way to replicate secondary grip influence (in a client auth situation) since you moved this setting to grip script?

      thanks!

      edit: even if secondary grip influence is set as default value in a grippable bp (e.g. secondary grip shouldn't influence pistols), this setting is ignored server-side when the client grabs it (host take into account client secondary grip, client dont).
      That said we need to change it at runtime before gripping and sync host as well as other clients (we have an options that let users disable secondary grip influence).
      Sounds like you have the bUseHighQualityRemoteSimulation turned to off? When not true it will only do light two handed calculations to save on cost on non local clients.

      As for replicating on the clients settings, those settings can be stored in the player controller and passed up to the server to apply on spawn or on grip to the object. Generally it would be better to just store them in the PC and set them on gripped objects by retrieving those replicated values.

      I didn't want to automatically replicate these in all guntools grip scripts as generally those specific settings are global and should be pulled on a client by client basis and applied instead.

      *Edit* If you have specific settings that you want the client to be able to modify, this also lets you just store and pass on those specific ones to new grips / spawns. IE: OnGrip in the base class, get player controller of gripping character, set grip script settings. Or if you don't let weapons be swapped back and forth, just do it on spawn.
      Last edited by mordentral; 10-22-2019, 09:08 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

        It follows the actual motion controller, my plugin doesn't have any way of knowing specifically what mesh you want to deal with. But that is why the PivotOverride exists, you can define any scene component as the controller pivot and all grips will be offset from there.

        The plugin only has one grip type that is actually attachment, the rest are sweeps / physics grips.
        Hi again, I haven't had much time to work on my project lately but now I do have my weapon gripping working pretty nicely. I'm seeing one strange behavior. I can pick up my weapon and drop it, but then I can't pick it up again. It looks like once dropped, the item isn't being detected in the 'get overlapping actors' node which I have set to filter by class on grippable skeletal mesh. Any idea what might be wrong there? I am definitely overlapping it when it's on the ground as I made the collision sphere visible (even stepping away and back in still doesn't get it picked up). The only extra step I'm taking after the Drop Actor function is removing the item that was in my hand from my player's inventory (just updating the appropriate array element and clearing it).

        Comment


          Originally posted by Nostrildumbass View Post

          Hi again, I haven't had much time to work on my project lately but now I do have my weapon gripping working pretty nicely. I'm seeing one strange behavior. I can pick up my weapon and drop it, but then I can't pick it up again. It looks like once dropped, the item isn't being detected in the 'get overlapping actors' node which I have set to filter by class on grippable skeletal mesh. Any idea what might be wrong there? I am definitely overlapping it when it's on the ground as I made the collision sphere visible (even stepping away and back in still doesn't get it picked up). The only extra step I'm taking after the Drop Actor function is removing the item that was in my hand from my player's inventory (just updating the appropriate array element and clearing it).
          You aren't removing channel collision on grip are you? Many people do that for one reason or another.


          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 aren't removing channel collision on grip are you? Many people do that for one reason or another.
            Nope not at all, the only thing I'm doing after the drop actor is removing the object from my inventory, kind of puzzled by this one. I'll make a new grippable BP actor that doesn't go into my inventory so I can cut that execution off and see if it works then.

            Comment


              Hello there! I've just started going through the Intro and setup video on the tutorials page created by Ravan but have got an error message popping up saying that the OpenVRExpansionPlugin and VRExpansionPlugin modules are missing or built with a different engine version.

              When I press the Yes button to rebuild them the progress bar goes to around 90%ish then I get another error message saying MyProject2 could not be compiled. Try rebuilding from source manually.

              I've tried 4.23 and 4.22 but still get the same errors coming up.

              Could someone please ELI5 because I haven't done much developing for the last 30-odd years so I'm more than a little rusty lol

              I've just downloaded and installed the latest version of Microsoft Visual Studio Community if that helps!

              Comment


                Originally posted by thesnowdog View Post
                Hello there! I've just started going through the Intro and setup video on the tutorials page created by Ravan but have got an error message popping up saying that the OpenVRExpansionPlugin and VRExpansionPlugin modules are missing or built with a different engine version.

                When I press the Yes button to rebuild them the progress bar goes to around 90%ish then I get another error message saying MyProject2 could not be compiled. Try rebuilding from source manually.

                I've tried 4.23 and 4.22 but still get the same errors coming up.

                Could someone please ELI5 because I haven't done much developing for the last 30-odd years so I'm more than a little rusty lol

                I've just downloaded and installed the latest version of Microsoft Visual Studio Community if that helps!
                Are you downloading the template or the plugin itself? If its just the plugin itself then you need to either use the pre-compiled binaries, or compile the project in Development Editor mode in visual studio.


                Consider supporting me on patreon

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

                Comment


                  Originally posted by mordentral View Post

                  Are you downloading the template or the plugin itself? If its just the plugin itself then you need to either use the pre-compiled binaries, or compile the project in Development Editor mode in visual studio.
                  Oops, didn't realise that I could just download the Template! Thanks for the help!

                  Comment


                    Hi,

                    I'm having an issue with picking up objects, in the editor i pick up an object and another one spawns and i can pick that up too. When connected to my dedicated server grabbing the first item works but the re spawned item can be very hit or miss, if i keep my hand near it and very surely grab it sometimes it will pick up sometimes it wont.

                    Is there anyway to make it more accurate on server?

                    Cheers,
                    Last edited by RazkingZ; 11-15-2019, 12:42 PM.

                    Comment


                      Originally posted by RazkingZ View Post
                      Hi,

                      I'm having an issue with picking up objects, in the editor i pick up an object and another one spawns and i can pick that up too. When connected to my dedicated server grabbing the first item works but the re spawned item can be very hit or miss, if i keep my hand near it and very surely grab it sometimes it will pick up sometimes it wont.

                      Is there anyway to make it more accurate on server?

                      Cheers,
                      Sounds like you are trying to detect location and hit on the server side only instead of the client? Depending on your controller replication rate it can be a bit off due to lerping between updates when the grab comes in to the server.

                      This is why in the template I run the hit detection client side and have the server just verify if the object is grippable or not if it is a server authed grip mode. You can still add a server sided rough distance check as well to enforce no remote grips.


                      If your hit logic is client side, then your respawns collision / position replication may be off, make sure it isn't set to static mobility.


                      Consider supporting me on patreon

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

                      Comment


                        Originally posted by mordentral View Post

                        Sounds like you are trying to detect location and hit on the server side only instead of the client? Depending on your controller replication rate it can be a bit off due to lerping between updates when the grab comes in to the server.

                        This is why in the template I run the hit detection client side and have the server just verify if the object is grippable or not if it is a server authed grip mode. You can still add a server sided rough distance check as well to enforce no remote grips.


                        If your hit logic is client side, then your respawns collision / position replication may be off, make sure it isn't set to static mobility.
                        i was using your pick up cube as a base and adding what i needed, so it weird that it doesn't work properly. ill have a look at where the detection is happening

                        Comment


                          Originally posted by RazkingZ View Post

                          i was using your pick up cube as a base and adding what i needed, so it weird that it doesn't work properly. ill have a look at where the detection is happening
                          Shouldn't base anything off of that generally, it is an example of converting a non grippable object to the plugin interface. Its from epics template, it is preferable to use one of the prefabs (grippable static mesh actor) when possible.


                          Consider supporting me on patreon

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

                          Comment


                            Hi Mordentral,

                            I'm trying to nativize my project (UE4.22) but I'm getting this when building:

                            fatal error: '../Plugins/VRExpansionPlugin/VRExpansionPlugin/Source/VRExpansionPlugin/Public/VRBPDatatypes.h' file not found

                            From what I can understand, the nativization process moves the files to a different folder, so relative paths don't work anymore. I read the documentation but it's not very explicit on how to fix this

                            https://docs.unrealengine.com/en-US/...ced/index.html

                            "If you add the path of this header to FilesToIncludeInModuleHeader, under [BlueprintNativizationSettings] in DefaultEditor.ini, you can fix many issues related to missing headers."

                            I tried adding this line to my DefaultEditor.ini but it doesn´t seem to do anything..

                            [BlueprintNativizationSettings]
                            +FilesToIncludeInModuleHeader=E:/UE4/GladiusQuest/Plugins/VRExpansionPlugin/VRExpansionPlugin/Source/VRExpansionPlugin/Public/VRBPDatatypes.h

                            Have you tried to nativize the plugin as part of a blueprint project? Do you know how to fix this?

                            Thank you very much in advance.

                            Comment


                              Originally posted by jawatr View Post
                              Hi Mordentral,

                              I'm trying to nativize my project (UE4.22) but I'm getting this when building:

                              fatal error: '../Plugins/VRExpansionPlugin/VRExpansionPlugin/Source/VRExpansionPlugin/Public/VRBPDatatypes.h' file not found

                              From what I can understand, the nativization process moves the files to a different folder, so relative paths don't work anymore. I read the documentation but it's not very explicit on how to fix this

                              https://docs.unrealengine.com/en-US/...ced/index.html

                              "If you add the path of this header to FilesToIncludeInModuleHeader, under [BlueprintNativizationSettings] in DefaultEditor.ini, you can fix many issues related to missing headers."

                              I tried adding this line to my DefaultEditor.ini but it doesn´t seem to do anything..

                              [BlueprintNativizationSettings]
                              +FilesToIncludeInModuleHeader=E:/UE4/GladiusQuest/Plugins/VRExpansionPlugin/VRExpansionPlugin/Source/VRExpansionPlugin/Public/VRBPDatatypes.h

                              Have you tried to nativize the plugin as part of a blueprint project? Do you know how to fix this?

                              Thank you very much in advance.
                              Yes and I test it on every release and it has been functioning fine.

                              What is the rest of that error? Before / After it in the log?


                              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 and I test it on every release and it has been functioning fine.

                                What is the rest of that error? Before / After it in the log?
                                This is the full log. I should have mentioned that I'm compiling for Android (Oculus Quest), maybe that's why is not working?

                                Thank you very much for taking a look into this, have no idea how to fix it... :/

                                UATHelper: Packaging (Android (ASTC)): ********** BUILD COMMAND STARTED **********
                                UATHelper: Packaging (Android (ASTC)): Running: C:\Program Files\Epic Games\UE_4.22\Engine\Binaries\DotNET\UnrealBuildTool.exe GladiusQuest Android Development -Project=E:\UE4\GladiusQuest\GladiusQuest.uproject E:\UE4\GladiusQuest\GladiusQuest.uproject -NoUBTMakefiles -remoteini="E:\UE4\GladiusQuest" -skipdeploy -Manifest=E:\UE4\GladiusQuest\Intermediate\B
                                uild\Manifest.xml -NoHotReload -log="C:\Users\xxxxxx\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_4.22\UBT-GladiusQuest-Android-Development.txt"
                                UATHelper: Packaging (Android (ASTC)): E:\UE4\GladiusQuest\Plugins\VirtualAgeStats\Source\VirtualAgeStats\VirtualAgeStats.Build.cs: warning: Modules must specify an explicit precompiled header (eg. PrivatePCHHeaderFile = "Private/VirtualAgeStatsPrivatePCH.h") from UE 4.21 onwards.
                                UATHelper: Packaging (Android (ASTC)): PLATFORM_ANDROID_NDK_VERSION = 140200
                                UATHelper: Packaging (Android (ASTC)): NDK toolchain: r14b, NDK version: 19, GccVersion: 4.9, ClangVersion: 3.8.275480
                                UATHelper: Packaging (Android (ASTC)): Parsing headers for GladiusQuest
                                UATHelper: Packaging (Android (ASTC)): Running UnrealHeaderTool "E:\UE4\GladiusQuest\GladiusQuest.uproject" "E:\UE4\GladiusQuest\Intermediate\Build\Android\GladiusQuest\Development\GladiusQuest.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErrors -installed
                                UATHelper: Packaging (Android (ASTC)): Reflection code generated for GladiusQuest in 7.2173115 seconds
                                UATHelper: Packaging (Android (ASTC)): Compiling Native code with NDK API 'android-19'
                                UATHelper: Packaging (Android (ASTC)): Writing manifest to E:\UE4\GladiusQuest\Intermediate\Build\Manifest.xml
                                UATHelper: Packaging (Android (ASTC)): Building 14 actions with 12 processes...
                                UATHelper: Packaging (Android (ASTC)): [1/14] Module.NativizedAssets.gen.2_of_5.cpp [arm64-es2]
                                UATHelper: Packaging (Android (ASTC)): In file included from E:/UE4/GladiusQuest/Intermediate/Plugins/NativizedAssets/Android/Game/Intermediate/Build/Android/UE4/Development/NativizedAssets/Module.NativizedAssets.gen.2_of_5.cpp:5:
                                UATHelper: Packaging (Android (ASTC)): In file included from E:\UE4\GladiusQuest\Intermediate\Plugins\NativizedAssets\Android\Game\Intermediate\Build\Android\UE4\Inc\NativizedAssets\Bow3__pf1418999182.gen.cpp:8:
                                UATHelper: Packaging (Android (ASTC)): E:/UE4/GladiusQuest/Intermediate/Plugins/NativizedAssets/Android/Game/Source\NativizedAssets/Public/Bow3__pf1418999182.h(5,10): fatal error: '../Plugins/VRExpansionPlugin/VRExpansionPlugin/Source/VRExpansionPlugin/Public/VRBPDatatypes.h' file not found
                                UATHelper: Packaging (Android (ASTC)): #include "../Plugins/VRExpansionPlugin/VRExpansionPlugin/Source/VRExpansionPlugin/Public/VRBPDatatypes.h"

                                UATHelper: Packaging (Android (ASTC)): ^
                                UATHelper: Packaging (Android (ASTC)): 1 error generated.
                                UATHelper: Packaging (Android (ASTC)): [2/14] Module.NativizedAssets.gen.5_of_5.cpp [arm64-es2]

                                Comment

                                Working...
                                X