グリースペンシルに頂点グループを持たせる方法
グリースペンシルに頂点グループを持たせる方法
241031 グリースペンシルとオブジェクトのVertex Groupの連携
グリースペンシルオブジェクトにアーマチュアモディファイアを追加
グリースペンシルオブジェクトを選択した状態で、右サイドの「モディファイア」タブ(スパナアイコン)に移動し、「モディファイアを追加」から「アーマチュアモディファイア」を選択します。
アーマチュアを設定
アーマチュアモディファイア内の「オブジェクト」フィールドで、グリースペンシルが追従するアーマチュア(ボーン構造)を選択します。
その後、グリースペンシルのDataタブ(緑のくるっとしたマーク)からVertex の欄に、Rigの追従させたいBoneの名前を記入する。これはVertex Groupの名前でもある。これは直接に正式名称を書かなきゃいけない。Indexから出てこない。
その後、連結させたいGreasePencilの点をEditmodeで選んだあと、同じDataタブから、連結させたいVertex Groupを選んだあとAssignを押す。(WeightPaitでも同じ動きをする。)
問題点 ー 連結した後の位置のズレ
Vertex Groupを連結するとGreasePencilの位置がずれた。
これはアーマチュアのEditmodeの位置とPoseモードでの位置のズレがあると、GreasePencilをVertex Groupに連携したときにその分(さらになんかの要素分ずれてるっぽいけどわかんなかった)をグリースペンシルをDeltaTransformでズレ分を直した。ズレはアーマチュアの同じくDataタブのTransformとDeltaTransformの総計だとおもうんだけど、角度以外はあてにならなかったので、目算で直した。
注意点
アーマチュアのアクションにGreasePencilを同期させたいときには、GreasePencilをアーマチュアにペアレントさせる。そうじゃないと、NLAの動きにGreasePencilが同期しなくて、一部の動きしか反映されない。
ロボットの目を動かしたいだけだったので、頂点グループ割り振る必要なかった。3dモデルのメッシュ自体がうごいて、それに追従するようにグリースペンシルが動くようにしたい場合のみ必要。メッシュ自体が動かないならグリースペンシルをリグのボーンにコンストレインにするべし。