FoRのブログ

3DCGとかUnityとかのなんやかんや

ブログタイトル

MODO de Bone移植

・要望

ウェイト入りメッシュ:A
全身ボーン:B
それぞれModoやFbxなどから用意する。
・Aに記録したウェイトを壊さずにBの骨を微調整して割り当てたい

例:落としてきたキャラFbxのスケールや骨を編集したいけど、ウェイトはめんどくさいから流用したい。 みたいな?

・プランA:普通にバインド

→したらウェイトが上書きされる。没

・プランB:GeometryInfluence使う

www.youtube.com

その手もあるにはあるが、もし全身のボーン&ウェイトが三桁以上あったら?
    →狂気の沙汰  

 

・プランC:箱だけ置いてバインド>箱消す>メッシュを移植

出来ないことはないが…スマートじゃなくない?

具体的には 例えばなんかこんな感じに骨二本とバインドした後ウェイト調整したものがあるとする

f:id:for13:20161027013802j:plain

色々いじってみてた感じ、どうもバインドした際のデフォーマーはメッシュに対してじゃなく、アイテム(ココでは青い箱アイコンの”Mesh”)に紐付けられるっぽい事に気づいた。

その後やっぱ一本骨足そ って事で先端に3を追加したとする

f:id:for13:20161027013806j:plain

当然これだけではデフォーマーの方もウェイトは増えない。一個ならプランBのアレで行けないいことはないと思うけど、これまた何十本も足した後を想像するとダルい。
かと言ってバインドすると   

f:id:for13:20161027015541j:plain

デフォーマーが追加されるけど所々値が変わる。 大筋は変わらないけど困る時があるかもしれん。

 

というわけで試行錯誤の末辿り着いたのが

・編集しているアイテムのポリゴンを、新しく作った空のMeshアイテムに退避(コレではTemp)

・編集しているアイテム(=骨とバインドしている、デフォーマーに登録されているアイテム)に適当にポリゴン追加して、追いバインド出来るようにする。

f:id:for13:20161027021623j:plain

バインドして追加した骨分のデフォーマーが追加される。追加したポリゴンは消す。

・退避していたポリゴンをもとのアイテムに戻して必要ならウェイトペイント等

 

コレで「Aに記録したウェイトを壊さずにBの骨に割り当てたい」を一応クリア出来た。

…でも何かもっとスマートな方法がある気がしてならない。

 

・プランD:ウェイト転写

記事まとめてる最中気づいた。

Aをコピーしてを作ってB骨とバインド。

後にAのウェイトをに転写して復元。
これが一番シンプルかな?まだ試してないからウェイト転写が出来るのか?からだけども。

-------------------
ちなみにLighewaveでは、骨にウェイト名を選択して割り当てて、骨のツリーが親子付けされているトップのオブジェクトに該当するウェイトがあれば反応するようになっています。

なので同じ体格・同じ骨構造・同じウェイト命名規則のモデルの場合、キャラAのシーンにキャラBのオブジェクトをロードして、Aの骨をBの子に移植したらそれで完了です。楽ちん。

まぁその利点を損なって余りあるウェイトペイントのし辛さなのですが…

 

保存