背景
facial capture などで deform するなどして変形したメッシュの各頂点が, 元のメッシュに比べてどれくらい変形しているか確認したい.
トポロジと頂点数は同じとする;.
Maya の標準機能にありそうな気もしますが, どうも無いっぽいようですね.
ツール
すでに先人たちによりありました. ありがとうございます.
C++ 版
https://github.com/dgovil/MeshCompare
dgovil さんのところには, neural net で skinning を簡略化する FDDA の実装もあります. 素晴らしいですね.
Python 版
https://github.com/Meatplowz/MeshCompare
とりあえずは python 版を使い,インタクティブに確認したいなど性能が必要であれば C++ を使うと良いでしょう.
頂点カラーに差分では, メッシュにマテリアルを割り当て, また Maya viewport 2.0 で screen-space ambient occlusion をきらないと頂点カラーそのものを表示できないので注意です!
Python 版を Emily model で試してみました.
適当に三つ領域で少し頂点位置を変えました. 変えたところが赤くなっています! 可視化素晴らしいですね
似たようなやり方で UV の差分や法線の差分にもチャレンジしてみましょう!
TODO
- facial capture 時系列データで試す.
- OpenFlipper や libigl, meshlab で差分の可視化をしてみる https://www.openflipper.org/plugins/mesh