未踏作業日誌――余計なもの作るよ!

未踏の作業日誌的なものを書きましょうということで書くことにしました.余計なことばっかりしています.

ある瞬間のポーズの頂点情報を取得して書き出すコードをやっと書けた

もしかして同じ悩みを抱えている人とかいるんじゃね? と思って検索してみたら思ったよりあっさり見つかってしまった.

DIY Skinned Mesh Rendering

このページを参考にしながらSkinnedMeshRendererをアサインしているオブジェクトならばなんでも行けるように改造したら,ものの見事に実装できてしまい唖然.

 

コードを解説すると,一番のキモは58~78行の部分だろうなぁ.一応,僕が参照したサイトではスキンメッシュアニメーションは根本から行うように書いてあったので,その通りになるよう実装したけれども,この方法だととにかくウェイト値が割り振られていれば頂点を回転させるみたいな強引な方法を取っていた.

根本から行うのと比べてシンプルだし目からウロコで,つい最近までどうやってシンプルに実装しようか悩んでいたのが馬鹿らしくなるほどだった.これで正しく計算できるんだ……と見た時は思った.

とりあえず,これでバインドポーズからある瞬間のポーズまでのモーフ量を出力することができた.MMDできちんと動かせるかどうかテストしたい.