Skip to content

Getting Started

desuqcafe edited this page Nov 23, 2025 · 4 revisions

Getting Started

This guide will walk you through setting up the VrmVMC node to work with non-VRM skeletons (Metahuman, Mixamo, Daz, etc.) for markerless motion capture.

Overview

The extended VrmVMC node allows you to receive motion capture data from XR Animator (or other VMC protocol sources) and apply it to any skeleton type, not just VRM avatars.

What You'll Need

  • A skeletal mesh (Metahuman, Mixamo, Daz Genesis 8, or custom rig)
  • XR Animator or another VMC protocol sender
  • Basic knowledge of Animation Blueprints

Step 1: Create a Vrm Meta Object

The Vrm Meta Object tells the VrmVMC node how to map VMC bone data to your specific skeleton.

  1. Navigate to: Content > Plugins > VRM4U
  2. In the Content Browser, set the filter to: Type = VrmMetaObject
  3. Right-click on an existing VrmMetaObject and select Duplicate
    • Or create a new one: Right-click > VRM4U > Vrm Meta Object
image2

Step 2: Configure the Meta Object

  1. Double-click the Meta Object to open it
  2. In the Details Panel, configure the following:

Target Skeletal Mesh

  • Set this to your character's skeletal mesh

Skeleton Type

Choose the skeleton type that matches your character:

  • Auto (recommended - automatically detects skeleton type)
  • VRM/VRoid - For VRM avatars
  • Metahuman - For Unreal's Metahuman characters
  • Mixamo - For Mixamo-rigged characters
  • Daz - For Daz Genesis 8 characters
  • Other - For custom rigs

Auto-Populate Bone Mapping

  1. Click the Auto Populate button
    • This will automatically detect and map bones based on the skeleton type
    • Check the Output Log to see which bones were mapped
image4

Custom Bone Overrides (Optional)

If Auto-Populate didn't map all bones correctly, you can manually override specific bones:

  • Humanoid Bone Name - The standard bone name (e.g., "leftHand")
  • Model Bone Name - Your skeleton's actual bone name (e.g., "hand_l")

Step 3: Save and Rename

  1. Save the Meta Object
  2. Rename it to something descriptive (e.g., Meta_MyCharacter or Mixamo_Meta)
image3

Step 4: Create an Animation Blueprint

Now we'll create an Animation Blueprint that uses the VrmVMC node.

  1. In the Content Browser, right-click and select:
    • Animation > Animation Blueprint
  2. Choose your character's Skeleton
  3. Name it (e.g., ABP_MyCharacter or ABP_Mixamo)
  4. Double-click to open it

Set Up the Anim Graph

  1. Go to the Anim Graph tab
  2. Right-click in the graph and search for VrmVMC
  3. Add the VrmVMC node
  4. In the node's Details Panel:
    • Assign your Vrm Meta Object (the one you created in Step 2)
  5. Connect the pose output pin from VrmVMC to the Result node
image5 image8

Configure VrmVMC Settings

In the VrmVMC node details, you can configure:

  • Ignore Local Rotation - Recommended for most setups
  • Use Remote Center Pos - Uses the position data from VMC
  • Apply Perfect Sync - Enables ARKit blendshape support
  • Update Mode - See Performance Configuration for details

Step 5: Fine-Tune (Optional)

If certain bones need adjustment, you can add Transform (Modify) Bone nodes after the VrmVMC node to tweak specific bone transforms.

image6

Common adjustments:

  • Spine rotation offsets
  • Hand/finger tweaks
  • Head positioning

Step 6: Test with XR Animator

  1. Assign your Animation Blueprint to your character
  2. Launch XR Animator
  3. In XR Animator settings:
    • Enable VMC Protocol output
    • Set the IP address to your Unreal Engine machine
    • Set the port (default: 39539)
  4. Start motion capture in XR Animator
  5. Your character in Unreal should now be receiving motion data!

Tips for Best Results

Auto-Populate Not Working?

  • Make sure you selected the correct Skeleton Type
  • Try setting it manually instead of using "Auto"
  • Check the Output Log for bone mapping status

Character Not Moving Correctly?

  • Verify your skeleton has standard humanoid bone names
  • Use Custom Bone Overrides to manually map problematic bones
  • Check that the Animation Blueprint is assigned to your character

Performance Issues?


Next Steps


Need Help? Open an issue on our GitHub repository with:

  • Your skeleton type
  • Which bones aren't mapping correctly
  • Screenshots of your setup