VR IK Body - Support

In a few days after the official release of 4.19. It’s ready, but I’ll need to rebuild it for non-preview version.

Iam getting a lot of errors in the log when I play or when I package the game, they repeat endlessly until they arms are configured. Any idea where they might be coming from, I assume a Tick event?

LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.
LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.
LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.
LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.

It happens if LogVRIKSkeletalMeshTranslator::GetLastPose was called before mesh initialization (which happens every time). Just ignore it, I’ll remove this message in the next update.

Next update will include some bug fixes, better support from Character-based player blueprints, better support for a rough irregular surface, support of crawling (in beta).

  • New simplified demo project (4.18+)
  • Sample of proper legs animation blending in the old demo project (4.18+)
  • New landscape demo map in the old demo project (4.18+)

If you have any feature requests please let me know.

Any chance you could update your tutorial? Seems outdated. Some of the nodes have changed. And I could not get my character up and running 100% with it. My character was at a 90 degree offset and the head/hands were not working at all (wouldn’t move with components). Followed the tutorial, changed up Input from Components, because of the docs and also through this thread. Still no go. Tried out your example project…works like a charm…but the BP is completely different than your tutorial…

Have you tried basic demo project (https://drive.google.com/open?id=1KGJ54NV9Pm2L3HTgFMdkovQzbfAbU1LI)? It’s based at the tutorial. You can import your skeletal mesh in it and test how it works.

Also, make sure that skeletal mesh component in you project is rotatetd in forward direction (X axis) of the actor. If you make a screenshots of your pawn blueprint and animation blueprint I think could detect the problem.

Yeah, your example project works…but it’s not the same setup as your tutorial. I’ll try to drop a character in there and see what the issue is.

Does your plugin take into Case Sensitivity on the Skeletons? If not, what else would cause a new skeleton to NOT work in your project? I literally just swapped out the skeletal mesh from your BP_Avatar and changed out some Skeletal Bone names in IK Skeletal Mesh Translator, but some are capitalized. What other setup would I need to do to get a character working in your template using your current logic?

Basically the TL;DR: What additional setup is required when doing a custom skeletal mesh in your template? Other than renaming the Skeleton Bones in VRIKSkeletalMeshTranslator.

The hands don’t even move. It’s basically a static sk mesh rotated 90 degrees, moves with me. But does nothing else.

BTW, I am doing the Multiplayer Setup.

Nevermind, figured it out on my own. I had to retarget the Animation BPs to the new skeletons. I don’t have the docs in front of me. But you should probably put that in there. Also, should do another tutorial for the Multiplayer Setup Version which is different.

Bones names + new animation blueprint. All skeleon have different animation blueprints (but setup inside of each blueprint is the same).

Ok. I’m sorry, i’ll make another tutorial for mulitplayer setup.

Hello!
I’m trying to Mimic VR Chat’s teleport method in Unreal with VRIK. I am using a Pawn that has working teleport, using Deactivate VRIK Input so that when pressing down on thumbpad, the mesh will stop following the player’s actions. At this point, I want the body to move to the teleport location. I tried using AI Move To and a Move Function, but couldn’t get this to work in 4.19. Is this something to do with VRIK or 4.19 or am I doing something wrong?
Thanks!

For Reference: https://youtu.be/NMHqb5CWeMQ?t=1m12s this is what I am trying to mimic.

I think you need a proper switch between two modes in the animation blueprint. Add state machine for basic locomotion and use Blend Poses By Bool. Also, when you start ‘teleporting’ return skeletal mesh to its default position inside of the CapsuleComponent.

Should help:

Have you tried to do Snap or Smooth Turning? Basically rotating the character? Seems there are some issues with the “correct facing orientation” (so says our animator)

The request from him: “Is there a way to rotate the root based on the body rotation (i.e) capsule and not the head?”

At the very least so Snap/Smooth Turning will work out of the box with your plugin?

Thanks

Also, Multiplayer Tutorial :slight_smile: You have the calibration going to PlayerState, but for what possible reason?

Just checked it. Yes, smooth rotation of the owning actor affects torso orientation. Please write me on e-mail if you need hot update (I usually update marketplace version only after 3-5 fixes).

Oops, misread it. I will shoot you an email. Thanks.

When I test the game as a non cooked Standalone game by first creating a shortcut to the UE4Editor.exe and then supplying the command line arguments as per the following the calibration always fails however the calibration always works when I do it through PIE.

Any ideas?

To run as a non cooked standalone game:
UE4Editor.exe [MyProject] [MyMap] -game

The only errors in the log I can see are these which I understand are not relevant:

2018.04.03-09.05.04:668][566]LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.
[2018.04.03-09.05.04:679][567]LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.
[2018.04.03-09.05.04:691][568]LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.
[2018.04.03-09.05.04:701][569]LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.
[2018.04.03-09.05.04:713][570]LogVRIKSkeletalMeshTranslator: Error: [GetLastPose]: Component isn’t ready.

@Yummy-Vegetables

Calibration works for me in both demo projects in standalone. The only idea is that it happens because of differences in level loading sequence. Try to add some small delay in BeginPlay before components initialization and between this initialization and loading calibrated data (if you use it).

The plugin also shouldn’t generate these errors anymore, so make sure you updated your version in the launcher (or write me a PM for the lastest version).

Ed. Just checked again. You’re right, calibration doesn’t work without delay, so just add Delay node in BeginPlay for ~0.5ms before VRIKBody: :Initialize (or ActivateInput) and VRIKSkeletalMeshTranslator: :Initialize ). My second guess is that I need to set loading phase to PreDefault for the runtime module. Will fix it with the next update, but for now this small workaround with delay is needed.