Skip to main content

UniHumanoid

Unity humanoid 工具与 BVH 导入器。

BVH runtime loader

var context = new BvhImporterContext();
context.Parse(path);
context.Load(); // create Skeleton hierarchy and mesh for visualize
GameObject root = context.Root;

RuntimeLoader

  • Scenes/RuntimeBvhLoader.unity

RuntimeLoader 和 PoseTransfer

加载 BVH 文件,并将姿势转移到任何具有人形特征的模型上。

  • Scenes/PoseTransfer.unity
humanpose_transfer_inspector.png

humanpose_transfer.png

加载 BVH 文件并创建带有 AnimationClip 的预制件

Drop bvh file to Assets folder. Then, AssetPostprocessor import bvh file.

将 BVH 文件拖动到 Assets 文件夹。然后,AssetPostprocessor 将导入 BVH 文件。

  • 创建一个 hierarchy(层级)预制件
  • 创建一个 humanoid Avatar
  • 创建一个 legacy 模式的 AnimationClip
  • 为 preview(预览)创建一个蒙皮网格
下载.png

将预制体在场景中实例化。

mesh.png

这个 object 可以处理了.

骨骼映射

This script help create human avatar from exist GameObject hierarchy. First, attach this script to root GameObject that has Animator.

Next, setup below.

  • model position is origin
  • model look at +z orientation
  • model root node rotation is Quatenion.identity
  • Set hips bone.

press Guess bone mapping. If fail to guess bone mapping, you can set bones manually.

Optional, press Ensure T-Pose. Create avatar.

bvh_bonemapping.png

These humanoids imported by UniGLTF and created human avatar by BoneMapping.

humanoid.gif

Download BVH files