Announcement

Collapse
No announcement yet.

VR Expansion Plugin

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

    Originally posted by Benjamin Paine View Post

    I'm just one person, and the people who have mentioned this on this forum I'm sure are just a subset of your userbase, so take this with some bias. After the breakout success of Boneworks showing that there is a market for more immersive, less comfort-focused VR games - I think having some sort of physical body that reacts with the world is going to be the target for a lot of developers. Many popular VR enthusiasts/curators/influencers top-ten lists feature HL:A (physical hands), Walking Dead: S&S (physical hands, mesh arms), Boneworks (full physical body), and Blade & Sorcery (full physical body.) Obviously there is still room for experimentation, and even just having the physics hands example is enough to get people started, but I can't help but feel like the ultimate "version" of the VRCharacter (maybe not the base?) would function more or less the same as the base character. This would better enable thinking of the VRCharacter as a traditional game character, and less like a floating camera and set of hands from which the base character must be a marionette.

    Just my biased opinion, however, as one of those developers targeting such an experience.
    What exactly does that have to do with root motion?


    Also not entirely sure what not having the default mesh in currently does to prevent any of that, the default mesh is not used as a movement collider anyway in engine. Were you going to attempt to inject root motion to move the character based on collisions? Because the physical body is possible as is, currently, I have users doing it. Boneworks isn't even a fully physical body for that matter, its still a capsule with physical arms, you can test that yourself, same with B&S for that matter, it also isn't fully physical.

    Using the physical animation component and any random skeletal mesh setup correctly will perform mostly the same (minus the nice puppeting plugin that Unity has). I can add the default mesh back and was likely going to soon anyway, its just never been high on my list as it provides nothing you can't already do, but was more specifically asking around why root motion would be asked after, as modifying that for the offset collision and replication will be a bit of a PITA and I wanted to weigh tasks.
    Last edited by mordentral; 05-28-2020, 08:03 PM.


    Consider supporting me on patreon

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

    Comment


      Benjamin Paine
      Do you really think a physical body is the ideal condition for VR games? I played Bonework and Blade and Sorcery. 50% of situations in Bonework, the arm part is off collision, for example in climbing, carrying long, complex weapons. Blade and sorcery only have physical hands, and physical mechanics are only activated when the player is in the air state. I tried a lot, and I found that a completely physical body is superfluous and sometimes annoying to the player, although as a developer, you find it very good.

      Physic Anim is really not good, in fixed situations, the player does not collide or collisions need not be precise, physic anim is acceptable. But in situations that need precision, such as climbing, your hands need to cling to a point, the physic arm is now a real nightmare. Trust me because I've already done it. Bonework also has to turn off the arm's collssion to be able to climb freely. Even when holding a gun, if the grip touches the player's arm, and that arm acts on the gun, causing the hand part to be back, this time the gun's position will be skewed, causing a sense of Irritating to the player. So that they turned off the collision of the hand with the gun.
      Last edited by HienNguyen27; 05-28-2020, 09:08 PM.

      Comment


        Originally posted by mordentral View Post

        What exactly does that have to do with root motion?


        Also not entirely sure what not having the default mesh in currently does to prevent any of that, the default mesh is not used as a movement collider anyway in engine. Were you going to attempt to inject root motion to move the character based on collisions? Because the physical body is possible as is, currently, I have users doing it. Boneworks isn't even a fully physical body for that matter, its still a capsule with physical arms, you can test that yourself, same with B&S for that matter, it also isn't fully physical.

        Using the physical animation component and any random skeletal mesh setup correctly will perform mostly the same (minus the nice puppeting plugin that Unity has). I can add the default mesh back and was likely going to soon anyway, its just never been high on my list as it provides nothing you can't already do, but was more specifically asking around why root motion would be asked after, as modifying that for the offset collision and replication will be a bit of a PITA and I wanted to weigh tasks.
        Sorry, I think I misinterpreted what you meant. I'm well aware it's not preventing any of that from happening, I got it working a couple of weeks ago doing exactly what you described!

        ​​​
        ​I'm in the process of generalizing it so I can save myself some hassle when implementing other characters (I have multiple distinct VR PCs that are similar in presentation and movement but very different interactions, and perhaps most importantly at different scales) so I'm mostly just thinking through how I'm going to achieve that in a way that doesn't hamstring me in like 6 months when I'm implementing the other PCs.

        Comment


          Hello all,
          after having the base character of the open world starter include the VRcharacter in the header, my VR character seems to work great and inherits the ability system. One issue I am trying to understand now, is that the enemy character, which is based off the same class as VRcharacter, has a reference to the character movement component in the animationBP which is returning none- the enemy character now also inherits the VRMovementComponent and I am not quite sure if I need to update the function in the animationBP or somewhere in the files. Thanks as always.
          -omfg

          Comment


            Originally posted by HienNguyen27 View Post
            Benjamin Paine
            Do you really think a physical body is the ideal condition for VR games? I played Bonework and Blade and Sorcery. 50% of situations in Bonework, the arm part is off collision, for example in climbing, carrying long, complex weapons. Blade and sorcery only have physical hands, and physical mechanics are only activated when the player is in the air state. I tried a lot, and I found that a completely physical body is superfluous and sometimes annoying to the player, although as a developer, you find it very good.

            Physic Anim is really not good, in fixed situations, the player does not collide or collisions need not be precise, physic anim is acceptable. But in situations that need precision, such as climbing, your hands need to cling to a point, the physic arm is now a real nightmare. Trust me because I've already done it. Bonework also has to turn off the arm's collssion to be able to climb freely. Even when holding a gun, if the grip touches the player's arm, and that arm acts on the gun, causing the hand part to be back, this time the gun's position will be skewed, causing a sense of Irritating to the player. So that they turned off the collision of the hand with the gun.
            An entire physical body, no. A physical body that is convincing enough to the player that it is a physical body, yes. The player doesn't care if it's 100% physical or not, they'll only notice when things behave strangely. One of the implementations I've tried (and I think I like) doesn't use a full physical body, either, just hands and feet (when foot tracking.)
            Last edited by Benjamin Paine; 05-28-2020, 09:24 PM.

            Comment


              Originally posted by omfgdude2 View Post
              Hello all,
              after having the base character of the open world starter include the VRcharacter in the header, my VR character seems to work great and inherits the ability system. One issue I am trying to understand now, is that the enemy character, which is based off the same class as VRcharacter, has a reference to the character movement component in the animationBP which is returning none- the enemy character now also inherits the VRMovementComponent and I am not quite sure if I need to update the function in the animationBP or somewhere in the files. Thanks as always.
              -omfg
              I wouldn't have your AI also base off of the VRcharacter, it will add some additional overhead to it. The VRMovementComponent is still a movement component, but re-parenting might have broken the reference, you can re-set it.


              Consider supporting me on patreon

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

              Comment


                I’m using the openvr plugin to get finger tracking working with the index controllers. The left hand looks perfect but the right hand looks terrible. The right hand bends in on its self and my fingers don’t match up. I have tried adjusting the axis of the joints, messed with the hand offset rotation. The skeleton is the unreal Skeleton on a custom character. I mirrored the joints from the left hand to right. So all the joints are equal.

                Comment


                  Originally posted by Lex713 View Post
                  I’m using the openvr plugin to get finger tracking working with the index controllers. The left hand looks perfect but the right hand looks terrible. The right hand bends in on its self and my fingers don’t match up. I have tried adjusting the axis of the joints, messed with the hand offset rotation. The skeleton is the unreal Skeleton on a custom character. I mirrored the joints from the left hand to right. So all the joints are equal.
                  You have to enable the mirror hand option for the left hand.


                  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 root motion checks were actually mostly ripped out to save performance in some of the character movement modes, so even if the original mesh was in it wouldn't be driving CMC locomotion currently.

                    I have a pathway to set the custom mesh being used so that the CMC knows which one to reference so a custom mesh could be used for such a thing if the code was in place.

                    I'm curious about why you intend to use root motion with VR though, considering its essentially direct control over camera movement most shouldn't use it. I wouldn't be entirely against putting the root motion code back in if there was a qualified reason for it. It would just have to be re-written to handle the offset capsule.

                    I've been back and forth over adding the default mesh back and re-parenting it as well. A lot of these were early decisions made a couple of years ago when first starting the character re-write.
                    Hmm, strangely enough, after I enabled the original inherited mesh, (i just commented out a specific super construct to not spawn mesh).. I was able to get the root motion working, however on replicated clients for some reason, the inherited mesh would remain at 0 degree z axis rotation, instead of the needed -90 adjustment most skeletal meshes need, even though it was setup that way in bp. Not fluent enough in cpp to figure out what went wrong, but it was enough to back out and rid of the original inherited again.

                    The reason we want root motion on our vr characters body is, we want the vr character to perform various "cinematic actions" that would be viewed by someone else, or the vr camera that remains locked in third person. Similar to watching yourself ragdoll after dying in Pavlovs, but we want more actions than just a ragdoll flopping down..

                    Originally posted by mordentral View Post

                    I wouldn't have your AI also base off of the VRcharacter, it will add some additional overhead to it. The VRMovementComponent is still a movement component, but re-parenting might have broken the reference, you can re-set it.

                    Also to this, by overhead you mean performance? How much exactly. Because I kind of did this, incorporated the Advanced locomotion system, onto the vr base character, then our custom vr player on top of the ALS with some ik blending for VR, now our characters blend in and out of NPC idle or VR interactivity smoothly. This way our Vr character can run around and mimmic any other npc in the game, to blend in and hide from other players. Would there have been a better way to do this?

                    Benjamin up there,mentioned to have the Locomotion kit be attached as a Parent Child Actor, however the hassle to translate all code to replace all the references was a bit heavy, but after doing so, there seemed to be an increased lag between the IK following and the variables it was pulling through a child actor.
                    Switching it back to this model and our IK is back to normal.
                    Last edited by thelazylion; 05-29-2020, 09:56 PM.

                    Comment


                      Originally posted by thelazylion View Post

                      Hmm, strangely enough, after I enabled the original inherited mesh, (i just commented out a specific super construct to not spawn mesh).. I was able to get the root motion working, however on replicated clients for some reason, the inherited mesh would remain at 0 degree z axis rotation, instead of the needed -90 adjustment most skeletal meshes need, even though it was setup that way in bp. Not fluent enough in cpp to figure out what went wrong, but it was enough to back out and rid of the original inherited again.

                      The reason we want root motion on our vr characters body is, we want the vr character to perform various "cinematic actions" that would be viewed by someone else, or the vr camera that remains locked in third person. Similar to watching yourself ragdoll after dying in Pavlovs, but we want more actions than just a ragdoll flopping down..




                      Also to this, by overhead you mean performance? How much exactly. Because I kind of did this, incorporated the Advanced locomotion system, onto the vr base character, then our custom vr player on top of the ALS with some ik blending for VR, now our characters blend in and out of NPC idle or VR interactivity smoothly. This way our Vr character can run around and mimmic any other npc in the game, to blend in and hide from other players. Would there have been a better way to do this?

                      Benjamin up there,mentioned to have the Locomotion kit be attached as a Parent Child Actor, however the hassle to translate all code to replace all the references was a bit heavy, but after doing so, there seemed to be an increased lag between the IK following and the variables it was pulling through a child actor.
                      Switching it back to this model and our IK is back to normal.
                      Its only a little heavier than a standard character, and that is mostly from the root offset logic and PRC. I just wouldn't do it with a ton of AI all at once is all, also you can remove ticking from both of those components and it is slightly faster on CPU than a normal character then due to some optimizations (still slower on extra replication overhead).

                      As for the replication, that is what isn't currently implemented for the root motion, i have to re-make the RPCs that send information out for the offset root.

                      I did go in today and add the default mesh back in though, i'll take a loot at re-adding root motion. They re-worked a lot of how it was used and i'm not as against it anymore.


                      Consider supporting me on patreon

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

                      Comment


                        Hello! This always looks so amazing! \ Please can you tell me what would be the one best download, that would 1) have the most implemented features and 2) be usuable for a 'artist' (less 'plugin installation' more,. just diving in and using template and adapting,, MIGRATING etc,. (I have no trouble with anything when it works predictably, The last download I tried, couple months ago, the hands (when you pick up a weapon) would be just all over the place, not gripping in any normal or right place, usually not even touching the weapon, Do I have to tell it what HMD I am using somehow? Will, it ever autodetect and have it so when you pick up a weapon, the hand like,.OVERLAPS and GRIPS (touching) the weapon like UVRF plugin or OCULUS Avatar?, With UVRF I would know what to do, go in and change the offsets until its right,. This is clearly superior, but i can't use it until I can get it to grip in the right places I hope it is a simple 'HMD selection' variable ?

                        Also, will there ever be any kind of enemy AI with this? I have spend like $1000+ on 'Game Kits' but have never had the slightest luck incorporating any of their features into VR ...Is there any way you could implement the simplest Mannequin Damage system so we could learn in VRExp how things damage or 'hurt' NPCS and why? (FOR VR, I have ALL of the game kits for NON VR and they are ALL 100% Different and non of them make any consistent sense to me in terms of VR..) one example and I would be off making a Shooter or Melee game!


                        FInally, there are really good usable interactive VR weapons, bow arrow, Guns, BOMBS, Lighters, and Candles etc in the similar 'UVRF' plugin, is there any easy way to pull those in and use them with this? :") (or are there guns in VR Exp?)
                        THANK YOU!!!
                        Last edited by NextWorldVR; 05-30-2020, 02:30 AM.

                        Comment


                          Originally posted by mordentral View Post

                          You have to enable the mirror hand option for the left hand.
                          I have mirror hand enabled only on the left hand.

                          Comment


                            Hey, i know this is kind of off topic, but i already started a thread some week ago on that.
                            I´m havin trouble with caustics which are only showing up in the editor saying light must be build.
                            When i do so, or hit play anyway, the caustic light is not showing up at all.
                            I used a directional light with the caustic material in the light funciton.
                            Would be glad if anybody can give some suggestions.
                            Thanks in advance!

                            Comment


                              Originally posted by Lex713 View Post

                              I have mirror hand enabled only on the left hand.
                              did you alter the default epic skeleton then? It should be fine with default skeleton and default offsets. If you edited the hand then it may require some manual adjustments of the bone transform handler via the offset variable.


                              Consider supporting me on patreon

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

                              Comment


                                Originally posted by NextWorldVR View Post
                                Hello! This always looks so amazing! \ Please can you tell me what would be the one best download, that would 1) have the most implemented features and 2) be usuable for a 'artist' (less 'plugin installation' more,. just diving in and using template and adapting,, MIGRATING etc,. (I have no trouble with anything when it works predictably, The last download I tried, couple months ago, the hands (when you pick up a weapon) would be just all over the place, not gripping in any normal or right place, usually not even touching the weapon, Do I have to tell it what HMD I am using somehow? Will, it ever autodetect and have it so when you pick up a weapon, the hand like,.OVERLAPS and GRIPS (touching) the weapon like UVRF plugin or OCULUS Avatar?, With UVRF I would know what to do, go in and change the offsets until its right,. This is clearly superior, but i can't use it until I can get it to grip in the right places I hope it is a simple 'HMD selection' variable ?

                                Also, will there ever be any kind of enemy AI with this? I have spend like $1000+ on 'Game Kits' but have never had the slightest luck incorporating any of their features into VR ...Is there any way you could implement the simplest Mannequin Damage system so we could learn in VRExp how things damage or 'hurt' NPCS and why? (FOR VR, I have ALL of the game kits for NON VR and they are ALL 100% Different and non of them make any consistent sense to me in terms of VR..) one example and I would be off making a Shooter or Melee game!


                                FInally, there are really good usable interactive VR weapons, bow arrow, Guns, BOMBS, Lighters, and Candles etc in the similar 'UVRF' plugin, is there any easy way to pull those in and use them with this? :") (or are there guns in VR Exp?)
                                THANK YOU!!!
                                The hands prior to the grasping addition were never meant to snap on, I left that open ended for developers to iterate on. I made the grasping hands as a workflow reference and potential starting point for that.

                                As for per controller offsets, there are controller profiles in the plugin that are used to align controllers to the real world hand, if they are setup correctly then you only map to one controller ( the one you develop with) and all other controllers should have correct orientations and offsets as well (oculus's 45 pitch offset or so).

                                As for pre-fab gameplay systems, no i'm not in the business of plug and play generic game creation setup for people, I target the exact opposite, back end tools to enable as much as possible without limiting options. People build on top of that with prefabs and the like (a community member has a gun system for example built on it).


                                Consider supporting me on patreon

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

                                Comment

                                Working...
                                X