Table of Contents
Fetching ...

CharacterMixer: Rig-Aware Interpolation of 3D Characters

Xiao Zhan, Rao Fu, Daniel Ritchie

TL;DR

CharacterMixer addresses the problem of interpolating between rigged 3D characters that have different mesh and skeleton topologies while preserving a posable rig. It introduces a rig-aware interpolation framework that represents characters as a union of SDFs, one per bone, and builds a hierarchical skeleton correspondence to generate a unified skeleton for posing and animation. The method combines initial skeleton correspondences with post-processing to form 1-to-many mappings, unified skeleton generation, pose transfer, and rig-aware geometry interpolation, enabling smooth interpolations during animation. Empirical results against state-of-the-art rig-unaware methods show higher visual fidelity and preserved rigging, illustrating the method's practical impact for cross-character interpolation and animation workflows.

Abstract

We present CharacterMixer, a system for blending two rigged 3D characters with different mesh and skeleton topologies while maintaining a rig throughout interpolation. CharacterMixer also enables interpolation during motion for such characters, a novel feature. Interpolation is an important shape editing operation, but prior methods have limitations when applied to rigged characters: they either ignore the rig (making interpolated characters no longer posable) or use a fixed rig and mesh topology. To handle different mesh topologies, CharacterMixer uses a signed distance field (SDF) representation of character shapes, with one SDF per bone. To handle different skeleton topologies, it computes a hierarchical correspondence between source and target character skeletons and interpolates the SDFs of corresponding bones. This correspondence also allows the creation of a single "unified skeleton" for posing and animating interpolated characters. We show that CharacterMixer produces qualitatively better interpolation results than two state-of-the-art methods while preserving a rig throughout interpolation.

CharacterMixer: Rig-Aware Interpolation of 3D Characters

TL;DR

CharacterMixer addresses the problem of interpolating between rigged 3D characters that have different mesh and skeleton topologies while preserving a posable rig. It introduces a rig-aware interpolation framework that represents characters as a union of SDFs, one per bone, and builds a hierarchical skeleton correspondence to generate a unified skeleton for posing and animation. The method combines initial skeleton correspondences with post-processing to form 1-to-many mappings, unified skeleton generation, pose transfer, and rig-aware geometry interpolation, enabling smooth interpolations during animation. Empirical results against state-of-the-art rig-unaware methods show higher visual fidelity and preserved rigging, illustrating the method's practical impact for cross-character interpolation and animation workflows.

Abstract

We present CharacterMixer, a system for blending two rigged 3D characters with different mesh and skeleton topologies while maintaining a rig throughout interpolation. CharacterMixer also enables interpolation during motion for such characters, a novel feature. Interpolation is an important shape editing operation, but prior methods have limitations when applied to rigged characters: they either ignore the rig (making interpolated characters no longer posable) or use a fixed rig and mesh topology. To handle different mesh topologies, CharacterMixer uses a signed distance field (SDF) representation of character shapes, with one SDF per bone. To handle different skeleton topologies, it computes a hierarchical correspondence between source and target character skeletons and interpolates the SDFs of corresponding bones. This correspondence also allows the creation of a single "unified skeleton" for posing and animating interpolated characters. We show that CharacterMixer produces qualitatively better interpolation results than two state-of-the-art methods while preserving a rig throughout interpolation.
Paper Structure (15 sections, 8 figures)

This paper contains 15 sections, 8 figures.

Figures (8)

  • Figure 1: The overall pipeline of CharacterMixer. Given a source and target character (represented as surface meshes + skeletal rigs), CharacterMixer uses rig skinning weights to segment each character's geometry into a set of parts. It also computes a correspondence between the source and target skeletons, which it uses to create a single unified skeleton given a time step. This unified skeleton is used to guide interpolation between the geometries of corresponding parts. Given a posed unified skeleton, CharacterMixer transfers the pose to source and target characters and interpolates the deformed geometries of the two posed characters. CharacterMixer enables interpolation during animation, where poses change (red arrow) concurrently with interpolation time steps (purple arrow) as shown in the bottom right.
  • Figure 2: Our pipeline for computing correspondences between skeletons and constructing an unified skeleton. Left: All the bones from both source and target skeletons. Middle: The initial correspondence phase which takes the source skeleton (white) and the target skeleton (gray) and produces 1-to-1 and 1-to-void matches, where void is denoted by $\emptyset$. Right: Grouping 1-to-void pairs to to create 1-to-many correspondences.
  • Figure 3: Generating unified bones at t = 0.5. The blue claw is a constrained bone made from 1-to-1 correspondence. Each yellow head bone is a loose bone made from 1-to-many correspondence. The red tail is a virtual bone made from 1-to-void correspondence.
  • Figure 4: Interpolating part geometries for a constrained unified bone. With part-based SDFs, interpolating between two characters amounts to taking a query point (cyan dot) within the bounding box of a unified skeleton bone in the bone's local space, finding which point in the source and target boxes that it maps to, looking up SDF values at those points, and linearly interpolating between them.
  • Figure 5: Comparison between interpolation using bounding box mapping and bone-relative mapping with 2D SDF visualization, where white outlines geometries and grey denotes bones. The interpolated geometry ("interp") is generated by mapping a point (cyan dot) in the unified bone's space to source and target spaces and then interpolating the queried SDFs. Interpolation with bounding box mapping preserves characteristics of input geometries while the other method does not.
  • ...and 3 more figures