Vive Mocap Kit - Support

I recently began using this tool. In my initial attempts I’ve found that during the manual calibration process when moving the hands, lower legs or feet the rig disconnects from those trackers, leaving those limbs locked to the world. Am I missing something or is this a bug seen by anyone else? Using 4.18.3

Hi,

I don’t use manual calibration, so it’s possibly a bug. I’ll investigate it and write you back.

@dmbartos ,
I improved manual calibration. Try this demo project (4.19): https://drive.google.com/open?id=1zPT9tC3NB86iJoJ2cz6xEMPuAJl6oMVd

Hello ,

I finally bought your plugin, and its great!

I need a bit of help trying to figure out some things which are not 100% clear to me:

  1. I notice that, after the calibration, the shoulders are very low, like 10 cm from where they should be, while the rest of the body looks ok. I was thinking to modify the source AnimBP, in order to add a Zoffset using a Transform Bone node on both shoulders…first of all, is this a good practice, and which AnimBP should I modify?

  2. Edit, Clone Mesh setup solved :wink:

Any other advice will be great :wink:

[USER=“2200”]Enter Reality[/USER]

Main animation blueprint is ‘ABP_Mannequin’ or another with similar name (not _Clone). You can add ‘Transform (Modify) Bone’ nodes for shoulders between ‘Pose Snapshot’ and ‘Blend Poses by Bool’.

It’s actuallty an old problem that I usually ignore, because I use this plugin for animation capture and simply adjust shoulders in 3ds max. I’ll fix it in the next update in a few days. For now, you can disable shoulders calculation (in the menu in the main Mocap project or, for custom projects, in CaptureDevice component settings: https://pp.userapi.com/c834101/v834101546/190cac/1iviBW2bKi8.jpg ).

Thanks for the advice.

It will definitively help to have the shoulders fixed, since for reltime application is kinda weird having a human figure which looks like that :smiley:

Looking forward for the update, meanwhile I’ll disable the shoulders rotation

,

In addition to what I’ve mentioned, it is possible, after the calibration is done, to hide the vive controllers and the trackers?

I’m using the ViveMocap scene as the base right now, and it would be really nice to hide everything except for the character, once the calibration is done.

I also tried to migrate the Clone Mesh to anotgher project, togethert with the BP Capture Pawn, but if I try to use the Clone Mesh BP, the cast to the BP Capture Pawn fails…at this point I’m thinking to just create a Pawn shown in one of the latest tutorial you have online, but to also have a Clone Mesh BP as a mirror image character…so in this case I’m still able to use the BP Capture Pawn, or should I create a different AnimBP?

ViveMocap project isn’t good starting point for custom projects. I recommend to use Basic project. It doesn’t have unnecessary C++ parent for pawn blueprint, doesn’t have innecessary clones and complications for animation capture.

To remove trackers in ViveMocap project, you can call GetAllActorsOfClass(BP_Tracker) - ForEachLoop - Destroy.
In basic project, you need to destroy components like this: https://pp.userapi.com/c849420/v849420949/322dc/FpxyP3cPw54.jpg

[quote]
but if I try to use the Clone Mesh BP, the cast to the BP Capture Pawn fails

[quote]

So, you can repace this casting by cast to your pawn blueprint or remove casting and use ‘GetComponentByClass’ like this:

It depends on your purposes. Plugin requires

  1. Capture Device component in player’s pawn blueprint with attached Skeletal Mesh component.
  2. Within player blueprint, CaptureDevice need to be initialized and calibrated
  3. Controlled skeletal mesh component should be driven by animation bluieprint inherited from CaptureAnimInstance class, and 'MeshPose; should be applied by PoseSnapshot animation node in anim graph.
    (ALSO: you can create clean animation blueprint, child of AnimInstance, get current MeshPose by calling CaptureDevice::GetLastPose and the, again, apply it by PoseSnapshot node).

That’s all. Everything else is an additional stuff. ‘Copy Pose from Mesh’ animation node used in clones isn’t part of the plugin. It exists in the Engine and can be used in any project to copy current pose of any skeletal mesh. You also can save MeshPose in a variable in player pawn blueprint (CaptureDevice::GetLastPose) and get reference to this pose from any animation blueprint.

I’ve submitted the update. Should be in Launcher in 1-2 days.

Great!

I will also check the Clone Mesh setup, in order to have everything accordingly.

Hi,

I was wondering if there was an existing way of finding what bones the trackers are attached to? I see that the manual calibration has bone names assigned to the text labels but was wondering if this happens for the auto calibration as well. I noticed that each tracker has a bone name but they don’t seem to be populated. I need to figure out which tracker is on which bone so when something collides with a collider to get the tracker to vibrate.

Kind regards,
Ivan

Hi ,

Comuple of questions:

I tried to add a Transform node in the AnimBP for the Mannequin ( ABP_Mannequin ) in order to solve the shoulders issue, but as soon as I add the nodes and connect them ( no matter where I connect them ), I get a “clavicle uses BP to update its values, access member variables directly or use a constant for better performance” warning, and basically the Transofmr node does absolutely nothing after I did the calibration.
I also tried to directly change the values for the bones in the detail panel on the right, but no matter what I add there, nothing seems to change.

I also tried to enable the “Lock shoulders rotation”, but the shoulders still look pretty bad while you have your arms down.

I got the notification of an update for the plugin some time ago, but if I try to update it I have the possibility to only update the other UE4 version and not the existing one ( I’ve installed it only on 4.19.2 ), so I’m not sure if I’m not using the latest version of the plugin, or if I need to uninstall/reinstall it? or the update for 4.19.2 was downloaded automatically? I don’t have lots of plugins from the store, so I’m not 100% sure how it works.

Anyway if you can show me the proper way on how to integrate the Transform node into the ABP_Mannequin plugin it would be great!

BR,

Nicolas

Hi [USER=“2200”]Enter Reality[/USER] ,

a. Shoulders should be fine after the last last update, so try to remove the plugin and install it again. Laucnher can be buggy. Because this problem is really fixed: I don’t fix shoulder for my mocap in 3dsmax anymore.

b. This warning shouldn’t affect result. But, to avoid it, don’t use ‘Break’ nodes for structures: https://pp.userapi.com/c844417/v844417517/bdf5a/7D6mJ4MegBE.jpg

c. Proper setup: https://pp.userapi.com/c844417/v844417517/bdf51/JsOnVEdhiA8.jpg

Note that here we need to add some adjustment in local space for one local axis. So zero rotator wouldn’t affect the result pose. (45; 0; 0) rotator would add 45 degrees to rotation received from the plugin. I.e. you need to look at your skeletal mesh, figure out bone orientation and add adjustment for the proper axis.

Ok, plugin updated manually, nice!

I notice that both arms, when I’m standing with my arms down, straight, which also affect the elbow upvector ( I’m also using two trackers on the upper arms ), so it is good practice to raise up the hand position with the method similar to what you used for the shoulders?
I will try that tomorrow, but if there is a better method it would be great!

Another thing, which is kinda critical:
I notice that by using a tracker only onto the pelvis, the spine is straight…which is a big issue for me, since my client do not want another tracker on the ribcage…so, is there a way to make the spine bending accoridngly to the HDM position?

I’ve used a FABRIK node in another project, which bends the spine using the pelvis and head position, and it works nicely, so it would be possible to replace the current setup with something like that?
This is very important for the project I’m currently developing, so any kind of advice will be very appreciated!

BR,

Nicolas

Can you make a screenshots or small video? Of course, you can fix it with Transform(Modify) Bone, but if something wasn’t work as expected, I’d prefer to fix it withing the plugin.

Have you considered a single tracker on ribcage instead of pelvis?

You can override it using FABRIK node just like Transform (Modify) node: https://pp.userapi.com/c846021/v846021971/b709c/FNwUPQg5IT8.jpg
Locations and rotations of pelvis and head bones in world space are already implemented in animation blueprint.

Hi [USER=“2200”]Enter Reality[/USER]

  1. I’ve made built-in flexible spine solver for pelvis tracker. The update will be availabele after the weekend.

  2. Forgot to mention it before, but you need to set ‘Enable Scaling’ checkbox in animation blueprint. It’s important, because by default mesh isn’t scaled to actor’s height and arm span (to keep default bones scale in animation).

Oh my, thank you very much man! So if I just use the pelvis tracker, the spine is IK’d to the HMD, right? that’s awesome!

And yes, I completely forgot to tell you that I disable the scaling, so that’s why the arms were too long and not proportioned, sorry about that!

I’ll wait for the update, and thanks again for the flexible spine, I really appreciate the time and effort to make this plugin perfect!

Yes, exactly.

After update, please make sure that FlexibleTrosoFromPelvis flag (BP_CapturePawn blueprint, properties of CaptureDevice component, ‘Setup’ rollout) is checked.

Hi @

I bought the plugin earlier and was looking into the calibration of the 4.20 project. When I pull the right trigger in the T-Pose the character gets scaled up and appears huge. When I pull the trigger again, the character shrinks down to the normal size, but all the attachments (controller, tracker) get squished into very small objects, probably being shrunk the same way the huge character gets shrunk back to a normal character. It’s then extremely hard to even see the controllers/trackers for manual calibration and the text label isn’t readable. I’m currently owning just 2 Vive Trackers, still getting more currently. Could this be a problem of using just two trackers (I know usually more are needed, just in regards to the scaling bug)? I’ve tried Full Body and Upper Body calibration.

Cheers