118
RigMesh: Automatic Rigging for Part-Based Shape Modeling and Deformation Péter Borosán Ming Jin Doug DeCarlo Yotam Gingold Andrew Nealen 1 Thank you for the introduc1on. I am Ming Jin, and this is Peter Borosan. Today we are going to show you RigMesh, a system that unifies the modeling and rigging stages in stateoftheart 3D modeling and anima1on pipeline. We can create complex shapes with just a few basic opera1ons of sketching, cuHng and merging And beJer yet, the shapes can be deformed at any step of the modeling process. [click]

RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

RigMesh: Automatic Rigging for Part-Based Shape Modeling

and Deformation

Péter BorosánMing Jin

Doug DeCarloYotam GingoldAndrew Nealen

1Thank  you  for  the  introduc1on.

I  am  Ming  Jin,  and  this  is  Peter  Borosan.

Today  we  are  going  to  show  you  RigMesh,  a  system  that  unifies  the  modeling  and  rigging  stages  in  state-­‐of-­‐the-­‐art  3D  modeling  and  anima1on  pipeline.

We  can  create  complex  shapes  with  just  a  few  basic  opera1ons  of  sketching,  cuHng  and  merging

And  beJer  yet,  the  shapes  can  be  deformed  at  any  step  of  the  modeling  process.

[click]

Page 2: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 3: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 4: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Modeling

Problem

• Creating ready-to-animate 3D models is hard

[youtube user: MasahiroUshiyama]

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 5: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Modeling Rigging

Problem

• Creating ready-to-animate 3D models is hard

[Weber et al. 07][youtube user: MasahiroUshiyama]

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 6: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 7: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 8: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

rig

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 9: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

rig deform

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 10: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

rig deform

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 11: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

rig deform

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 12: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

rig deform

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 13: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Problem

• Creating ready-to-animate 3D models is hard

rig deform

• Fundamental problem: static sequential pipeline

2Let’s  start  by  looking  at  the  problem  in  the  state-­‐of-­‐the-­‐art  and  why  we  think  this  work  is  important.

[click]

First  of  all,  crea1ng  ready-­‐to-­‐animate  3D  models  is  fundamentally  hard.

This  whole  process  is  broken  down  into  modeling  and  rigging.

[click]

In  professional  modeling  tools,  modeling  the  surfaces  is  usually  performed  manually.  

The  ar1st  starts  with  coarse  subdivision  surfaces  or  parametric  patches  and  works  out  all  the  details.

[click]

Rigging  is  another  process  in  which  the  ar1st  has  to  design  the  skeleton  and  specify  its  mappings  to  the  model.

It  is  a  laborious  process  which  takes  a  lot  of  tries  and  fails  un1l  finally  a  sa1sfactory  design  is  achieved.

[click]

Here  is  an  overview  of  the  pipeline  in  a  nutshell.

[click]

The  ar1st  creates  a  3D  model

[click]

She  rigs  the  model  by  designing  the  skeleton  and  pain1ng  the  skin  weights

[click]

The  resul1ng  shape  is  fully  rigged  and  ready  for  skin  deforma1ons  by  skeletons.  Everything  seems  fine.

But  what  if  the  animator  wants  to  change  the  model  aTer  it’s  been  rigged?

[click]

For  example,  she  wants  to  change  the  puffy  hand  into  a  claw?

[click]

Any  changes  like  this  will  invalidate  the  exis1ng  rig

[click]

Requiring  that  the  model  be  fed  back  into  the  pipeline  again

[click]

The  fundamental  problem  here  is  the  sta1c  pipeline  where  modeling  and  rigging  have  to  be  performed  sequen1ally

[click]

Page 14: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

3Recent  advancement  in  the  literature  has  provided  various  ways  to  simplify  both  modeling  and  rigging.

No1ceably,  sketch-­‐based  3D  modeling  has  been  a  popular  research  field.  It  provides  an  easy-­‐to-­‐use  interface  and  enables  rapid  itera1ve  prototyping.

[click]

For  example,  the  seminal  paper  on  Teddy  describes  the  crea1on  of  freeform  3D  models  from  scratch.  

[click]

As  extensions  to  such  freeform  modelers,  other  researchers  have  proposed  to  use  varia1onal  implicit  func1ons  for  the  underlying  shape  representa1ons,  such  as  the  BlobTree  used  in  ShapeShop.  

[click]

Later,  FiberMesh  demonstrated  how  to  integrate  3D  control  curves  into  sketch-­‐based  modeling  tools.  The  curves  on  the  surfaces  serve  as  handles  for  controlling  the  geometry.

[click]

Because  a  single  sketch  usually  does  not  suffice  for  crea1ng  a  complex  shape,  there  has  also  been  interes1ng  work  on  part  based  modeling,  such  as  layered  surface  composi1on  using  Surface  Trees.

[click]

Page 15: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Sketch-based Modeling

3Recent  advancement  in  the  literature  has  provided  various  ways  to  simplify  both  modeling  and  rigging.

No1ceably,  sketch-­‐based  3D  modeling  has  been  a  popular  research  field.  It  provides  an  easy-­‐to-­‐use  interface  and  enables  rapid  itera1ve  prototyping.

[click]

For  example,  the  seminal  paper  on  Teddy  describes  the  crea1on  of  freeform  3D  models  from  scratch.  

[click]

As  extensions  to  such  freeform  modelers,  other  researchers  have  proposed  to  use  varia1onal  implicit  func1ons  for  the  underlying  shape  representa1ons,  such  as  the  BlobTree  used  in  ShapeShop.  

[click]

Later,  FiberMesh  demonstrated  how  to  integrate  3D  control  curves  into  sketch-­‐based  modeling  tools.  The  curves  on  the  surfaces  serve  as  handles  for  controlling  the  geometry.

[click]

Because  a  single  sketch  usually  does  not  suffice  for  crea1ng  a  complex  shape,  there  has  also  been  interes1ng  work  on  part  based  modeling,  such  as  layered  surface  composi1on  using  Surface  Trees.

[click]

Page 16: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Sketch-based Modeling

• Teddy [Igarashi et al. 99]

3Recent  advancement  in  the  literature  has  provided  various  ways  to  simplify  both  modeling  and  rigging.

No1ceably,  sketch-­‐based  3D  modeling  has  been  a  popular  research  field.  It  provides  an  easy-­‐to-­‐use  interface  and  enables  rapid  itera1ve  prototyping.

[click]

For  example,  the  seminal  paper  on  Teddy  describes  the  crea1on  of  freeform  3D  models  from  scratch.  

[click]

As  extensions  to  such  freeform  modelers,  other  researchers  have  proposed  to  use  varia1onal  implicit  func1ons  for  the  underlying  shape  representa1ons,  such  as  the  BlobTree  used  in  ShapeShop.  

[click]

Later,  FiberMesh  demonstrated  how  to  integrate  3D  control  curves  into  sketch-­‐based  modeling  tools.  The  curves  on  the  surfaces  serve  as  handles  for  controlling  the  geometry.

[click]

Because  a  single  sketch  usually  does  not  suffice  for  crea1ng  a  complex  shape,  there  has  also  been  interes1ng  work  on  part  based  modeling,  such  as  layered  surface  composi1on  using  Surface  Trees.

[click]

Page 17: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Sketch-based Modeling

• Teddy [Igarashi et al. 99]• ShapeShop [Schmidt et al. 05]

3Recent  advancement  in  the  literature  has  provided  various  ways  to  simplify  both  modeling  and  rigging.

No1ceably,  sketch-­‐based  3D  modeling  has  been  a  popular  research  field.  It  provides  an  easy-­‐to-­‐use  interface  and  enables  rapid  itera1ve  prototyping.

[click]

For  example,  the  seminal  paper  on  Teddy  describes  the  crea1on  of  freeform  3D  models  from  scratch.  

[click]

As  extensions  to  such  freeform  modelers,  other  researchers  have  proposed  to  use  varia1onal  implicit  func1ons  for  the  underlying  shape  representa1ons,  such  as  the  BlobTree  used  in  ShapeShop.  

[click]

Later,  FiberMesh  demonstrated  how  to  integrate  3D  control  curves  into  sketch-­‐based  modeling  tools.  The  curves  on  the  surfaces  serve  as  handles  for  controlling  the  geometry.

[click]

Because  a  single  sketch  usually  does  not  suffice  for  crea1ng  a  complex  shape,  there  has  also  been  interes1ng  work  on  part  based  modeling,  such  as  layered  surface  composi1on  using  Surface  Trees.

[click]

Page 18: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Sketch-based Modeling

• Teddy [Igarashi et al. 99]• ShapeShop [Schmidt et al. 05]• FiberMesh [Nealen et al. 07]

3Recent  advancement  in  the  literature  has  provided  various  ways  to  simplify  both  modeling  and  rigging.

No1ceably,  sketch-­‐based  3D  modeling  has  been  a  popular  research  field.  It  provides  an  easy-­‐to-­‐use  interface  and  enables  rapid  itera1ve  prototyping.

[click]

For  example,  the  seminal  paper  on  Teddy  describes  the  crea1on  of  freeform  3D  models  from  scratch.  

[click]

As  extensions  to  such  freeform  modelers,  other  researchers  have  proposed  to  use  varia1onal  implicit  func1ons  for  the  underlying  shape  representa1ons,  such  as  the  BlobTree  used  in  ShapeShop.  

[click]

Later,  FiberMesh  demonstrated  how  to  integrate  3D  control  curves  into  sketch-­‐based  modeling  tools.  The  curves  on  the  surfaces  serve  as  handles  for  controlling  the  geometry.

[click]

Because  a  single  sketch  usually  does  not  suffice  for  crea1ng  a  complex  shape,  there  has  also  been  interes1ng  work  on  part  based  modeling,  such  as  layered  surface  composi1on  using  Surface  Trees.

[click]

Page 19: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Sketch-based Modeling

• Teddy [Igarashi et al. 99]• ShapeShop [Schmidt et al. 05]• FiberMesh [Nealen et al. 07]• SurfaceTrees [Schmidt and Singh 08]

3Recent  advancement  in  the  literature  has  provided  various  ways  to  simplify  both  modeling  and  rigging.

No1ceably,  sketch-­‐based  3D  modeling  has  been  a  popular  research  field.  It  provides  an  easy-­‐to-­‐use  interface  and  enables  rapid  itera1ve  prototyping.

[click]

For  example,  the  seminal  paper  on  Teddy  describes  the  crea1on  of  freeform  3D  models  from  scratch.  

[click]

As  extensions  to  such  freeform  modelers,  other  researchers  have  proposed  to  use  varia1onal  implicit  func1ons  for  the  underlying  shape  representa1ons,  such  as  the  BlobTree  used  in  ShapeShop.  

[click]

Later,  FiberMesh  demonstrated  how  to  integrate  3D  control  curves  into  sketch-­‐based  modeling  tools.  The  curves  on  the  surfaces  serve  as  handles  for  controlling  the  geometry.

[click]

Because  a  single  sketch  usually  does  not  suffice  for  crea1ng  a  complex  shape,  there  has  also  been  interes1ng  work  on  part  based  modeling,  such  as  layered  surface  composi1on  using  Surface  Trees.

[click]

Page 20: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Automatic Rigging

4While  sketch-­‐based  tools  simplify  the  process  of  modeling,  there  also  exists  work  in  the  literature  that  inspires  automa1c  rigging  on  finished  models.

[click]

Skeleton  extrac1on  is  a  well-­‐studied  problem  in  different  communi1es  such  as  vision,  psychology  and  graphics.  

[click]

For  example,  here’s  a  recent  survey  on  a  lot  of  work  from  genera1ng  2D  medial-­‐axes,  3D  medial  surfaces  to  3D  curve-­‐skeletons.

[click]

On  the  other  hand,  if  the  skeleton  topology  is  known,  3D  models  can  be  rigged  using  skeleton  embedding  and  automa1c  skinning.  For  example,  the  Pinocchio  system  proposed  an  automa1c  skinning  method  using  heat  diffusion.

[click]

Page 21: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Automatic Rigging

• Skeleton extraction [Sharf et al. 07] [Pan et al. 09] [Ju et al. 11]

4While  sketch-­‐based  tools  simplify  the  process  of  modeling,  there  also  exists  work  in  the  literature  that  inspires  automa1c  rigging  on  finished  models.

[click]

Skeleton  extrac1on  is  a  well-­‐studied  problem  in  different  communi1es  such  as  vision,  psychology  and  graphics.  

[click]

For  example,  here’s  a  recent  survey  on  a  lot  of  work  from  genera1ng  2D  medial-­‐axes,  3D  medial  surfaces  to  3D  curve-­‐skeletons.

[click]

On  the  other  hand,  if  the  skeleton  topology  is  known,  3D  models  can  be  rigged  using  skeleton  embedding  and  automa1c  skinning.  For  example,  the  Pinocchio  system  proposed  an  automa1c  skinning  method  using  heat  diffusion.

[click]

Page 22: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Automatic Rigging

• Skeleton extraction [Sharf et al. 07] [Pan et al. 09] [Ju et al. 11]

[Cornea et al. 07]

4While  sketch-­‐based  tools  simplify  the  process  of  modeling,  there  also  exists  work  in  the  literature  that  inspires  automa1c  rigging  on  finished  models.

[click]

Skeleton  extrac1on  is  a  well-­‐studied  problem  in  different  communi1es  such  as  vision,  psychology  and  graphics.  

[click]

For  example,  here’s  a  recent  survey  on  a  lot  of  work  from  genera1ng  2D  medial-­‐axes,  3D  medial  surfaces  to  3D  curve-­‐skeletons.

[click]

On  the  other  hand,  if  the  skeleton  topology  is  known,  3D  models  can  be  rigged  using  skeleton  embedding  and  automa1c  skinning.  For  example,  the  Pinocchio  system  proposed  an  automa1c  skinning  method  using  heat  diffusion.

[click]

Page 23: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Automatic Rigging

• Skeleton extraction [Sharf et al. 07] [Pan et al. 09] [Ju et al. 11]

[Cornea et al. 07] • Automatic skinning Pinocchio [Baran and Popović 07]

4While  sketch-­‐based  tools  simplify  the  process  of  modeling,  there  also  exists  work  in  the  literature  that  inspires  automa1c  rigging  on  finished  models.

[click]

Skeleton  extrac1on  is  a  well-­‐studied  problem  in  different  communi1es  such  as  vision,  psychology  and  graphics.  

[click]

For  example,  here’s  a  recent  survey  on  a  lot  of  work  from  genera1ng  2D  medial-­‐axes,  3D  medial  surfaces  to  3D  curve-­‐skeletons.

[click]

On  the  other  hand,  if  the  skeleton  topology  is  known,  3D  models  can  be  rigged  using  skeleton  embedding  and  automa1c  skinning.  For  example,  the  Pinocchio  system  proposed  an  automa1c  skinning  method  using  heat  diffusion.

[click]

Page 24: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Solution?Solution

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 25: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Solution?

rig deform

Solution

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 26: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Solution?

rig deform

Solution

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 27: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Solution?

rig deform

Solution

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 28: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Solution?

rig deform

Solution

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 29: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

rig deform

Solution

Models rigged at all times

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 30: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

rig deform

Solution

Models rigged at all times• Non-linear editing

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 31: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

rig deform

Solution

Models rigged at all times• Non-linear editing• Modeling by parts

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 32: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

rig deform

Solution

Models rigged at all times• Non-linear editing• Modeling by parts

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 33: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

rig deform

Solution

Models rigged at all times• Non-linear editing• Modeling by parts

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 34: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

rig deform

Solution

Models rigged at all times• Non-linear editing• Modeling by parts

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 35: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

rig deform

Solution

Models rigged at all times• Non-linear editing• Modeling by parts

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 36: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

rig deform

Solution

Models rigged at all times• Non-linear editing• Modeling by parts

5Now,  if  we  take  a  look  again  at  the  previous  pipeline,  can  we  use  these  exis1ng  methods  to  solve  the  problem?

[click]

For  example,  we  can  use  sketch-­‐based  modeling  tools  such  as  FiberMesh  for  the  modeling  part

[click]

and  use  automa1c  rigging  such  as  Pinocchio  for  the  rigging  part?

[click]

Unfortunately,  this  s1ll  does  not  change  the  linearity  of  the  pipeline.

Also  the  automa1c  rigging  methods  are  typically  not  fast  enough  for  real-­‐1me  interac1ons.

If  the  animators  want  to  rapidly  iterate  on  their  designs,  they  shouldn’t  have  to  go  through  the  en1re  pipeline

[click]

Here  is  the  solu1on  we  propose:  

In  order  to  break  the  sequen1al  pipeline,  the  model  should  be  rigged  at  all  1mes.  

[click]

As  a  result  of  that:

The  animator  can  perform  non-­‐linear  edi1ng  in  terms  of  modeling,  rigging  and  deforma1on

[click]

She  can  also  model  by  parts;[short  pause]

Here  is  what  the  whole  modeling  process  should  look  like.

[click]

ATer  shape  crea1on  the  model  is  already  rigged

[click]

The  animator  can  freely  pose  and  change  the  model

[click]

For  example,  if  she’s  not  sa1sfied  with  the  hand,  she  can  remove  it  use  a  cuHng  opera1on

[click]

And  replace  it  with  a  new  part  by  using  the  merging  opera1on

[click]

All  of  these  opera1ons  should  happen  in  real  1me

[click]

Page 37: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

RigMeshContributions

Models rigged at all times• Non-linear editing• Modeling by parts

6Here  are  our  contribu1ons  in  light  of  the  proposed  solu1on:

[click]

In  addi1on  to  enabling  non-­‐linear  edi1ng,  the  animator  can  model  by  parts  using  three  basic  opera1ons  of  sketching,  cuHng  and  merging;

[click]

We  propose  a  method  for  automa1cally  determining  the  bone  skeleton  from  the  user  sketch;  specifically  determining  the  number  and  placement  of  the  joints,  which  is  the  key  issue  in  our  system  for  controls  and  degrees  of  freedom;

[click]

Because  the  shape  can  be  locally  changed  using  opera1ons  like  cuHng  and  merging,  we  need  to  come  up  with  a  method  for  upda1ng  the  skin  weights  in  real-­‐1me,  without  globally  re-­‐skinning  the  whole  shape.

[click]

Page 38: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

RigMeshContributionsModels rigged at all times

• Non-linear editing• Modeling by parts: Sketch, Cut & Merge

6Here  are  our  contribu1ons  in  light  of  the  proposed  solu1on:

[click]

In  addi1on  to  enabling  non-­‐linear  edi1ng,  the  animator  can  model  by  parts  using  three  basic  opera1ons  of  sketching,  cuHng  and  merging;

[click]

We  propose  a  method  for  automa1cally  determining  the  bone  skeleton  from  the  user  sketch;  specifically  determining  the  number  and  placement  of  the  joints,  which  is  the  key  issue  in  our  system  for  controls  and  degrees  of  freedom;

[click]

Because  the  shape  can  be  locally  changed  using  opera1ons  like  cuHng  and  merging,  we  need  to  come  up  with  a  method  for  upda1ng  the  skin  weights  in  real-­‐1me,  without  globally  re-­‐skinning  the  whole  shape.

[click]

Page 39: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

• Automatically determining skeletal structure from sketch

RigMeshContributionsModels rigged at all times

• Non-linear editing• Modeling by parts: Sketch, Cut & Merge

6Here  are  our  contribu1ons  in  light  of  the  proposed  solu1on:

[click]

In  addi1on  to  enabling  non-­‐linear  edi1ng,  the  animator  can  model  by  parts  using  three  basic  opera1ons  of  sketching,  cuHng  and  merging;

[click]

We  propose  a  method  for  automa1cally  determining  the  bone  skeleton  from  the  user  sketch;  specifically  determining  the  number  and  placement  of  the  joints,  which  is  the  key  issue  in  our  system  for  controls  and  degrees  of  freedom;

[click]

Because  the  shape  can  be  locally  changed  using  opera1ons  like  cuHng  and  merging,  we  need  to  come  up  with  a  method  for  upda1ng  the  skin  weights  in  real-­‐1me,  without  globally  re-­‐skinning  the  whole  shape.

[click]

Page 40: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

• Automatically determining skeletal structure from sketch

• Efficient local skin weights computation

RigMeshContributionsModels rigged at all times

• Non-linear editing• Modeling by parts: Sketch, Cut & Merge

6Here  are  our  contribu1ons  in  light  of  the  proposed  solu1on:

[click]

In  addi1on  to  enabling  non-­‐linear  edi1ng,  the  animator  can  model  by  parts  using  three  basic  opera1ons  of  sketching,  cuHng  and  merging;

[click]

We  propose  a  method  for  automa1cally  determining  the  bone  skeleton  from  the  user  sketch;  specifically  determining  the  number  and  placement  of  the  joints,  which  is  the  key  issue  in  our  system  for  controls  and  degrees  of  freedom;

[click]

Because  the  shape  can  be  locally  changed  using  opera1ons  like  cuHng  and  merging,  we  need  to  come  up  with  a  method  for  upda1ng  the  skin  weights  in  real-­‐1me,  without  globally  re-­‐skinning  the  whole  shape.

[click]

Page 41: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Demo

7Now  I’m  going  to  show  you  an  interac1ve  demo:

So  this  is  the  RigMesh  system.  You  can  create  a  3D  model  by  sketching  its  silhoueJe,  like  in  Teddy  or  FiberMesh.

The  big  difference  is  that  the  shape  is  already  rigged.  You  can  deform  it  using  IK  with  our  peeling  interface.  This  is  a  simple  opera1on  in  our  system  because  the  shapes  are  rigged  at  all  1mes.

Now  let’s  say  you  already  have  some  exis1ng  models,  for  example  a  chess  piece.  You  can  try  out  your  different  ideas  by  sketching,  cuHng  and  merging.

Let’s  sketch  some  arms  for  this  chess  piece…  and  make  a  copy  of  it.

If  you  want  to  merge  the  arm  with  the  body,  you  can  either  merge  by  snapping  exis1ng  joints,  or  by  adding  a  new  joint  and  snapping  there;  you  can  also  merge  by  inser1ng  a  new  bone.

You  can  also  change  the  exis1ng  skeleton  topology  by  inser1ng  new  joints.

Let’s  aJach  the  arm  this  way…  and  pose  the  shape.

Now  during  posing,  you  might  no1ce  that  the  shape  would  look  beJer  if  we  made  some  changes  to  it.  For  example,  you  might  want  a  claw  instead  a  puffy  hand.

Let’s  cut  it  out,  and  replace  it  with  something  else.  I  already  have  a  claw  so  let’s  load  it  in…  and  merge  it.

Do  the  same  thing  for  the  other  arm.

And  pose  the  shape  a  liJle  bit  more.

So  you  see  our  tool  is  especially  useful  for  rapid  prototyping,  trying  out  different  ideas  when  you  don’t  even  have  a  specific  design  goal  in  mind.

[aTer  demo]

Thanks  a  lot  for  your  aJen1on.  I  will  now  hand  it  over  to  Peter.

Page 42: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 43: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 44: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 45: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 46: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 47: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 48: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 49: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 50: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 51: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 52: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 53: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 54: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Shape creation

8Thank  you.  So  let’s  see  what’s  going  on  behind  the  scenes.

As  you’ve  seen  in  the  demo  the  user  can  sketch  the  silhoueJe  of  the  desired  3D  shape,  and  our  system  generates  a  surface  composed  of  smoothly  joined  generalized  cylinders,  a  skeleton,  and  skin  weights  aJaching  the  surface  to  the  skeleton.

First  The  user’s  sketched  curve  is  closed  and  treated  as  a  planar  polygon  

[click]  

and  then  chordal  axis  transform  is  applied  to  this  polygon,  and  by  refining  the  results  we  obtain  a  decomposi1on  into  cylindrical  regions  [click]  with  well  defined  local  symmetry  and  connec1ng  regions  lacking  such  symmetry.  These  regions  are  then  treated  in  a  different  way.

For  the  cylindrical  regions  high  quality  skeletons  are  extracted  using  a  modifica1on  of  the  DP  algorithm,  [c]  and  generalized  cylinder  surfaces  are  created  by  using  the  2D  local  symmetry  axes  as  cylinder  axes.  [c]

Then  using  the  informa1on  from  the  connec1ng  regions  the  skeleton  parts  are  connected  to  create  an  easy  to  use  low  DOF  skeleton  [c]

Similarly  generalized  cylinder  surfaces  are  connected  at  connec1ng  regions  resul1ng  in  a  water1ght  mesh.  [c]

The  surface  is  then  aJached  to  the  skeleton  by  compu1ng  smooth  skin  weights  following  the  Pinnochio  method  of  Baran  and  Popovic.

This  skinning  algorithm  has  two  parts:  bounding  the  surface  ver1ces  to  bones  of  the  skeleton  and  ensuring  smoothness  by  solving  a  Laplacian  system.  The  bounding  for  ver1ces  are  trivially  known  for  ver1ces  in  cylindrical  regions,  so  it  only  has  to  be  computed  for  ver1ces  on  connec1ng  regions.

The  user  can  then  combine  the  resul1ng  model  with  an  exis1ng  one.  [c]  The  surfaces  and  skeletons  are  merged  [c],  and  the  skin  weights  must  be  updated.  While  the  same  algorithm  could  be  used  again,  it  slows  considerably    as  the  complexity  of  the  shape  increases.  [c]  But  observe  that  only  the  skin  weights  of  ver1ces  near  the  merge  boundary,  a  small  frac1on  of  all  ver1ces  are  no1ceably  affected.  This  allows  for  a  local  skin  weight  re-­‐computa1on  that  greatly  accelerates  the  process.  [c]

Because  of  the  1me  constraint,  now  I  will  talk  about  the  details  of  the  skeleton  construc1on  for  the  cylindrical  regions,  if  interested  the  other  steps  can  be  found  in  our  paper.

Page 55: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Skeletonization

9The  3D  surface  is  created  by  using  the  2D  local  symmetry  axes  of  the  cylindrical  regions  as  the  axes  of  generalized  cylinders.  This  is  the  surface  for  which  we  need  a  bone  skeleton.  It  should  obviously  have  a  linear  structure,  so  the  ques1on  remains  how  many  joints  should  we  have  and  where  should  they  be  placed

Page 56: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Skeletonization

10An  easy  solu1on  would  be  having  a  single  bone  for  the  en1re  cylindrical  region.  But  this  way  the  whole  cylindrical  region  stays  rigid,  we  can  only  pose  it  rela1vely  to  the  other  parts  of  the  shape

Page 57: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Skeletonization

11The  other  extremum  is  having  many  joints  and  this  way  many  degrees  of  freedom.

But  then  posing  becomes  tedious  using  forward  kinema1cs,  and  if  we  use  IK,  deforma1ons  may  occur  in  regions  that  we  would  want  to  stay  rigid.

Page 58: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Skeletonization

12So  we  have  to  find  a  balance  between  these  extrema,  we  have  to  find  a  tradeoff  between  usability  and  the  number  of  degrees  of  freedom

Page 59: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Skeletonization

13So  what  do  we  have  to  work  with?  For  each  cylindrical  region  the  local  symmetry  is  described  by  the  chords  and  the  chordal  axis.

Page 60: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Skeletonization

chordal axis

14The  chordal  axis  is  an  approxima1on  of  the  local  symmetry  axis

Page 61: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Skeletonization

chord

15And  the  chords  tell  us  the  thickness  of  the  region  along  the  axis

Page 62: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Skeletonization

16The  end  points  of  the  chords  are  approximately  symmetric  point  pairs  on  the  sketch.

The  chordal  axis  represents  well  the  3D  surface,  so  we  use  it  for  crea1ng  the  bone-­‐skeleton.

Since  bones  are  straight,  parts  of  the  shape  corresponding  to  a  single  bone  should  also  be  roughly  straight.

The  bone  skeleton  then  can  be  constructed  by  down  sampling  the  chordal  axis  to  line  segments.  A  popular  algorithm  for  such  poly-­‐line  simplifica1on  is  the  DP  algorithm

Page 63: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

17Recall,  the  DP  algorithm  is  a  greedy  recursive  algorithm.

It  down  samples  the  input  poly  line  represented  by  a  series  of  points,  such  that  all  of  the  original  points  lie  within  a  predetermined  error  threshold  of  the  resul1ng  poly  line

Page 64: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

18A  line  segment  is  fit  between  the  first  and  last  points

Page 65: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

19If  not  all  the  points  are  within  the  threshold  of  this  segment

Page 66: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

20The  point  farthest  from  the  line  segment  is  chosen  and  two  recursive  calls  are  made,  for  the  parts  before  and  aTer  the  chosen  point

Page 67: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

21

Page 68: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

22

Page 69: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

23

Page 70: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

24

Page 71: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

25

Page 72: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

26When  all  points  are  within  the  threshold

Page 73: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Douglas-Peucker algorithm

27The  algorithm  stops,  and  we  can  use  the  resul1ng  line  segments  as  the  bones  of  the  skeleton

Page 74: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

What happens if…

28But  life  is  not  always  that  simple  and  we  might  have  a  shape  like  this

Page 75: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

…the chordal axis is almost straight

29Where  the  chordal  axis  is  almost  straight,  but  the  thickness  varies  substan1ally  along  the  chordal  axis

Page 76: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Result of Douglas-Peucker

30Applying  DP  would  result  in  a  single  line  segment,  therefore  the  skeleton  would  have  a  single  bone,  even  though  we  feel  that  a  shape  like  this  does  in  fact  have  two  parts,  and  therefore  the  skeleton  should  have  two  bones  connected  at  a  joint  at  the  minimum  thickness

Page 77: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Result of Douglas-Peucker

31We  can  lower  the  error  threshold  to  get  more  line  segments,  but  the  addi1onal  joints  are  not  placed  at  the  desired  loca1on

Page 78: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Result of Douglas-Peucker

32But  instead  at  sort  of  random  loca1ons  according  to  noise  and  slight  perturba1ons  in  the  chordal  axis.  This  shouldn’t  really  be  a  surprise,  since  we  didn’t  use  informa1on  on  the  thickness

Page 79: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Use thickness (chords)

33So  to  alleviate  this  problem  we  extended  the  DP  algorithm  to  also  use  thickness  informa1on  from  the  chords.  So  instead  of  approxima1ng  the  chordal  axis  with  a  poly  line  we  are  approxima1ng  the  en1re  cylindrical  region  with  symmetric  trapezoids.

Page 80: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Fit line segment

34So  the  recursive  func1on  is  modified  in  the  following  way:

First  a  line  segment  is  fit  between  the  midpoints  of  the  first  and  last  chords

Page 81: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Fit trapezoid

35And  then  a  symmetric  trapezoid  is  also  added  using  the  line  segment  as  its  symmetry  axis,  and  the  bases  of  the  trapezoid  are  determined  by  projec1ng  the  first  and  last  chords  onto  the  normal  direc1on  of  the  segment.

Page 82: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Fit trapezoid

36Then  we  have  to  evaluate  if  it  this  trapezoid  is  a  good  approxima1on  of  the  cylindrical  region.

Page 83: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

37We  define  the  error  at  each  chord  as  the  sum  of  the  squared  distances  between  the  end  points  of  the  chord  and  the  two  sides  of  the  trapezoid.

Page 84: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

38We  compute  the  error  at  each  chord

Page 85: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

39

Page 86: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

40

Page 87: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

41

Page 88: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

42

Page 89: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

43

Page 90: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

44

Page 91: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

45

Page 92: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

46

Page 93: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

47

Page 94: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Cylindrical Douglas-Peucker error

48If  the  maximum  is  greater  than  the  predefined  threshold

Page 95: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Add new point

49Then  we  take  the  midpoint  of  the  chord,  and  recursively  call  for  the  parts  before  and  aTer  this  chord

Page 96: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Fit trapezoids

50We  fit  trapezoids  again

Page 97: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Error below threshold

51And  if  the  errors  are  below  the  threshold,  the  algorithm  terminates

Page 98: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Bones

52and  the  axes  of  the  trapezoids  are  used  as  the  bones  of  the  skeleton

Page 99: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

53So  using  the  CDP  algorithm  we  create  the  skeleton  for  each  cylindrical  region.  [c]  For  details  on  other  steps,  please  see  our  paper.

Page 100: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

53So  using  the  CDP  algorithm  we  create  the  skeleton  for  each  cylindrical  region.  [c]  For  details  on  other  steps,  please  see  our  paper.

Page 101: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Results

54So  this  way  users  can  easily  create  complex  posed  models.

They  don’t  have  to  worry  about  crea1ng  the  rig,  the  skeleton  and  skin  weights  are  constructed  automa1cally  with  the  shape,  and  maintained  during  the  modeling  process,  so  they  can  really  concentrate  on  the  design  of  the  individual  parts;  which  can  be  re-­‐used  like  in  the  case  of  the  squid  example  in  the  middle.  Users  can  pose  the  shape  while  modeling,  and  thanks  to  the  local  re-­‐skinning  the  modeling  flow  is  never  interrupted.

Page 102: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Results (reusing existing models)

55An  other  advantage  of  modeling  by  parts  is  that  users  can  combine  exis1ng  models,  they  can  quickly  try  out  different  ideas  without  any  pausing  due  to  rigging.

Page 103: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Results (1st time users)

56Users  don’t  have  to  be  professional  modelers  to  be  able  to  create  rigged  shapes.  The  models  you  see  here  were  created  by  first  1me  users  aTer  a  15  minute  training  session.

Page 104: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Limitations

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 105: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Limitations

Only  acyclic  skeletons

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 106: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Limitations

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 107: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Limitations

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 108: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Limitations

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 109: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Limitations

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 110: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Limitations

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 111: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Limitations

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 112: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

Limitations & Future work

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 113: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

Limitations & Future work

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 114: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

Limitations & Future work

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 115: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

Limitations & Future work

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 116: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

Adapt  for  improved  skinning  methods

Limitations & Future work

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 117: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Only  acyclic  skeletons

Objects  without  strong,  stable  axial  symmetry

Adapt  for  improved  skinning  methods

Include  anima>on  in  the  unified  pipeline

Limitations & Future work

57Of  course  our  system  has  limita1ons  as  well:

It  can  only  handle  acyclic  skeletons,  new  shapes  always  have  spherical  genus,  and  are  therefore  created  with  tree  like  skeletons,  and  merging  always  occurs  at  a  single  joint.

Objects  without  strong,  stable  axial  symmetry  cannot  be  created  with  a  single  sketch.  For  example  the  head  of  the  squid  from  the  examples  could  not  be  created  with  a  single  sketch,  but  instead

we  had  to  introduce  a  workaround:  sketch  a  longer  shape  with  a  well  defined  symmetry  axis  and  then  cut  off  the  extra  material.

Avenues  for  future  work  include  adap1ng  our  skin  weight  recomputa1on  for  more  advanced  skinning  methods.

And  an  interes1ng  yet  non-­‐trivial  extension  is  including  anima1on  in  the  unified  pipeline,  such  that  changes  to  the  model  are  instantaneously  reflected  in  the  anima1on.

We  are  in  fact  currently  working  on  it.

This  concludes  are  talk,

Page 118: RigMesh: Automatic Rigging for Part-Based Shape Modeling ...game.engineering.nyu.edu/mingUploads/rigmesh_siggraph_asia_talk_… · RigMesh: Automatic Rigging for Part-Based Shape

Thank you!

58Thank  you  for  your  aJen1on