Lecture 16: Alternative Representations

by Mike Gleicher on March 11, 2013

Blending

When does it work

  • poses must be similar (over the whole blend)
  • timing must be similar (so poses similar over the whole blend)

How many poses can you blend?

  • sets of 2 (left right straight loops)
    • note: really becomes 4 if you do interpolation in time
  • more than 2 (linear combinations)
  • extreme: always blending “all poses” (big weight vector)
    • in practice, mainly zeros
    • update weight vector on each frame –> motion field

What to blend?

  • to get “in between” need things that are close
  • Wiley Hahn (regular lattice) – careful capture
  • Kovar (k-NN)

How much to blend? (the weights)

  • temporal blending
    • linear interpolation vs. better
  • spatial blending
    • half-way in blend space might not be half-way in angle space
    • single link example
  • how to get precise control?
    • insure samples are really close (small angle approx)
    • IK post-process cleanup
    • non-linear solution
    • psuedo-samples

What if we were to blend the end effector positions instead?

  • blending all points doesn’t work unless things are really close
    • breaks distance constancy
  • get exact goals
  • need IK (or something like it) to find joint angles

Does it have to be a hierarchy?

Could be a point cloud (markers, joint positions, …)

  • no IK for end effector goals
  • give up some fidelity of angles – but how important are they?
  • can (usually) recover angles if necessary
    • may need extra markers to disambiguate
  • stretching – might not be the end of the world
    • better to stretch that to footskate/float

How do point clouds work for the various operations we care about?

  • need to transform the whole thing
  • quite character proportion dependent
  • difficult to drive skinning
  • gets interactions with world correct
  • blending?
  • transitions?
  • matching for graphs?

Added bonuses for “Cartesian representations”

  • easy physics
  • easy positional constraints
  • easy contacts
  • matrices (jacobians) are sparse (this cuts both ways)

MKM

  • goal: represent motion in a way that is independent of character (as much as possible)
  • represent end effector positions / trajectories
  • represent limb “planes” – so single limb IK is not ambiguous
  • separate into global and local root motions (similar to path editing)
  • core of body represented in a “normalized” way (it only needs to be scaled)
  • constraints are easier to deal with (since they are positions)
    • footplants
    • “above table”
    • distance
  • still requires non-linear solving (CCD), but slack since the limbs are figured out

Cartesian Blending (can Baasten)

  • figure out footplants / constraints and work backwards
  • blending knees and other positions gives good starting points for IK
  • need to deal with global alignment

Ho & Komura (relationship preserving adaptation)

  • interested in close-in interactions of characters
  • form mesh from point clouds
    • tetrahedralization (build a volumetric form)
    • small edges between things that are close
  • Spacetime mesh
    • each point connected in space (to form tetrahedra)
    • each point connected in time (to itself in other frames)
  • idea:
    • make small adjustment to the mesh (to get closer to goals)
    • fix constraints afterwards
    • very large system (all points x all frames)
      • sparse
      • linear (since its points in space)
    • objectives (in space time)
      • laplacian deformation energy (the mesh doesn’t deform too much)
        • Laplacian coordinates
          • basic idea – predict value based on average of neighbors
          • coordinate is offset from where average would expect you to be
      • preserve accelerations of each point
    • add constraints
      • make bone lengths meet goals (linearize distances)
      • positions
      • collisions (since we have the whole mesh) – penalty method
        • detect problem
        • fix when time comes
    • note: needs to be small steps
      • linearizations
      • collisions happen
Print Friendly, PDF & Email

Previous post:

Next post: