僕のCGアカデミア

グラフィクス系(主にキャラクターアニメーションに関する)論文やアクティビティを簡単に紹介するログ

ソースが公開されてる論文まとめ

Rigging

Skeleton Extraction by Mesh Contraction

http://visgraph.cse.ust.hk/projects/skeleton/

 

Simulation

VegaFEM

http://run.usc.edu/vega/index.html

 

Implicit Integration for Particle-based Simulation of Elasto-Plastic Solids

Pacific Graphics 2013

http://people.cs.umass.edu/~yhzhou/Site/elastoplastic/

 
Deformation

Cubic Mean Value Coordinates, SIGGRAPH 2013 

http://cg.cs.tsinghua.edu.cn/people/~xianying/Papers/CubicMVCs/index.html

 

Cubica
https://www.mat.ucsb.edu/~kim/cubica/

 

Collision Detection

Efficient geometrically exact continuous collision detection, SIGGRAPH2012

http://www.cs.ubc.ca/labs/imager/tr/2012/ExactContinuousCollisionDetection/BEB2012.html

 

PolyDepth: Real-time Penetration Depth Computation using Iterative Contact-Space Projection, SIGGRAPH2012

http://graphics.ewha.ac.kr/polydepth/

番外編

Results Data

Changxi Zheng and Doug L. James, Energy-based Self-Collision Culling for Arbitrary Mesh Deformations, ACM Transaction on Graphics (SIGGRAPH 2012), 31(4), August, 2012.

http://www.cs.cornell.edu/projects/escc/

3D Data

Pinoccio
http://www.mit.edu/~ibaran/autorig/pinocchio.html

 Library

CG系ライブラリ特集 - uimac実装メモ

 

 おすすめレンダラー

Mitsuba

http://www.mitsuba-renderer.org/

 

これから増やします...

 

論文紹介: Example-based Dynamic Skinning in Real Time

Xiaohan Shi, Kun Zhou, et al.
Example-based Dynamic Skinning in Real Time
SIGGRAPH 2008
[PDF], [Video]

概要

キャラクターの骨に追従するような二次的動作を計算するには時間がかかるため,事前に計算してある物理ベースによる例示ポーズ,もしくはユーザが手動で与えたパラメータによって構築された結果を用いて,リアルタイムでスケルトンベースの二次動作が付加されたキャラクターアニメーションを生成する研究.

コントリビューション

  • 彼らの提案している線形の弾性体モデルがメッシュベースであるため,スキニング等の手法と相性がいい.
  • 高速な形状フィッティングアルゴリズム
  • ダイナミックスキニングを実現するためのGPU計算

手法

彼らの提案するメッシュベースの線形モデルの弾性体の計算結果が例示に近づくよう,線形モデルの頂点に与えてあるパラメータを例示の弾性体モデルと形状がフィットするよう最適化を行う. 

論文紹介: Adding Physics to Animated Characters with Oriented Particles

Matthias Müller and Nuttapong Chentanez,
Adding Physics to Animated Characters with Oriented Particles
VRIPHYS 2011
情報ページ

 概要

従来,様々な物体がシミュレーションによって動かせるようになってきているが,人間の動き,特に二次動作についてはまだまだ課題が多い.例えば,肌の揺れであったり,重ね着した服や髪の毛同士のコンタクトと自己衝突,それらに人間の複雑な動きが絡むと大変時間のかかる計算が必要になってくるだろう.その解決策として,筆者らがそれまでに提案したOriented Particles(以下OP)と呼ばれる手法を用いて,Shape Matchingに比べてより安定かつ高速な衝突判定が可能な,リアルなキャラクターアニメーションを実現した.

コントリビューション

  • キャラクターアニメーションとOPの統合(運動量保存)
  • 重なる衣服のような複雑な幾何学形状に対しても効率のよい計算が可能.
  • Particeの衝突判定計算が安定

手法

スケルトンとOPによるスキニング手法 (Vertex-particle skinning)

OPをキャラクターアニメーション,つまりスケルトンの動きに応じて動くキャラクターに対してどう適用するか,という点が参考になった.(Oriented Particesの原文を実はまだ読んでいないので,もしかしたら同じことが書いてあるかも)

というのも,一般的なスケルトンベースのアニメーションは,各ボーンが各頂点に対して,スキニングウェイトというものを保持していて,その値とボーンの回転行列からスキンの頂点が変形する(スキニングが行われる)んですが,ここで書いてあったのは,Oriented Particlesの楕円Particle自体が各頂点に対してウェイトを持っていて,Particleの持った回転行列とウェイトを通じて,スキンの頂点がスキニングされるるっていうのがちょっと新しい話で面白いな,と.この論文の中で紹介されてたのは以下.

  • vertex-particle skinning
  • vertex-bone skinning
  • particle-bone skinning 
運動量の保存

この論文のモチベーションがスケルトンの動きに応じて動くキャラクターアニメーションなので,例えば,キャラクターが自分の髪の毛を上に引っ張っても浮かないのと同じように,自分の動きだけで運動量が完結する(つまり,運動量を保存する)ための手法が書かれていました.その手法は結構単純で,スキニング等で変形された現在形状と更新された次のフレームでの形状(ここではShape Matchingに習って目標形状)とすると,

  1. それぞれでパーティクルの質量を考慮した運動量ベクトルとの差をとってMoment Matrixというものを作る.(この部分は,Shape Matchingに似てる)
  2. 極分解等により,Moment Matrixから回転行列を抽出
  3. 回転行列,目標形状,現在形状を用いて,座標を更新

でいけるそうです.

参考文献

M. Müller, N. Chentanez
Solid Simulation with Oriented Particles
SIGGRAPH 2011 

 OPに関する記事は(僕の大好きな)小山くんが詳しく書いてくれているので,ぜひ参照してください.

Unity 上に自分で物理エンジンを実装したい

論文読み: Position Based Fluids (SIGGRAPH '13)

 

論文紹介: Compression and Direct Manipulation of Complex Blendshape Models

Jaewoo Seo, Geoffrey Irving, J. P. Lewis, Junyong Noh.
Compression and Direct Manipulation of Complex Blendshape Models
SIGGRAPH ASIA 2011.

http://naml.us/~irving/papers/seo2011_compression.pdf

概要

BlendShapeアニメーションは,大量のBlendShapeモデルを使用するため,インタラクティブな編集が困難.(例. ロード・オブ・ザ・リングのゴブリンには,およそ900ものシェイプを用いたそうです.) そこで,大量のShapeを圧縮し,インタラクティブな編集が可能に使用しようというのが本研究のモチベーション.次元圧縮手法として,Hierarchically Semi-separable(HSS) representationという手法 [Xia et al., 2010] をブレンドシェイプに応用することで,高速かつ効率のよいアニメーションを可能にした.  

参考資料

http://www-ui.is.s.u-tokyo.ac.jp/misc/seminar/siggraphasia2011preview/11.%20Animation%20(Saito).pptx