[Spine]キャラの背丈を変える

トランスフォーム・コンストレイントで変える

Spine公式ブログにてキャラの背丈を変えるチュートリアルが紹介されていた。それはトランスフォームコンストレイントをうまく使って調整しており、ボーンやアタッチメントの変更などは一切行っていないものだった。なので他のコンストレイントやアニメーションに影響を出すことなく背丈を変えることができるのだ。公式ブログはこちら。

今回は自分で実践してそれをやってみる。まず足にIK設置したキャラを用意。背丈を変えるのにIKは必須ではないが、IKを設置した足に対しては縮尺変更用とは別でトランスフォームコンストレイントを付ける必要がある。

まずIKを設置した足のためのトランスフォームコンストレイントを作る。これを作る理由はbodyボーンをいじらずにbodyボーンを下に下げるためだ。bodyボーンを下げる理由は足を短くした時に足の先端がIKボーンから浮かないようにするためである。キャラの親ボーンであるbodyを選択しrootをターゲットにトランスフォームコンストレイントを作成する。

まず大事なのが相対的ボタンにチェックを入れることだ。ターゲットがrootの場合、rootは原点(0,0)の座標にあるのでミックスのトランスレートを100にしてもbodyボーンは移動しない。相対的にチェックを入れる利点はコントロールされるボーンの位置を自由に変えられる点だ。実際の背丈調整はオフセットで調整する。そうすればbodyボーンをいじることなくbodyを下に下げられる。

続いてもう一つのトランスフォームコンストレイントを作成する。このコンストレイントで実際に手足の縦の縮尺を変える。まず手足のボーンを選択してrootをターゲットにトランスフォームコンストレイントを作成する。

まずローカルにチェックを入れる。そしてミックスのサイズを10程度にして、オフセットを−1らへんに調整する。すると手足が良い感じに縮まったはず。ローカルにチェックを入れないと関節ごとのサイズ変更になって手・足としての比率が変わってしまう。ちなみにオフセットはミックス値に対して調整する機能なので調整したいミックス値は0以上にする必要がある。

これで背丈の変更ができた!

ちなみに手が正円だったり足を大きく描いたりすると縦横比のズレが目立つので注意。

手や足は小さく目立たせない方がいいかも

感想

このチュートリアルで初めてトランスフォームコンストレイントの相対的にチェックを入れたが、こういう場面で使うのかと感心した。この背丈調整は実践で使うかは不明だが、コンストレイントだけで調整が完結してるので使い勝手がいいなと思った。

コメント