久しぶりの「animbot」の使い方シリーズです。
今回はanimbotのProバージョン以上で使える(Ecoバージョンでは使えない)「Temp Controls」という新機能について解説します。
私はこの「Temp Controls」にとても興味を持っていました。しかもanimbotの使い方のブログを書いていることもあり、この機会にEcoバージョンからProバージョンに切り替えました。私と同じようにEcoからProに切り替えるべきか悩んでいる人の参考になれば幸いです。
「Temp Controls」とは何か?
こちらの公式サイトの説明を見ると「いろいろなことが出来て凄そうだな」ということがわかります。
そんな「Temp Controls」とは何かを一言でいうと、「一時的なコントローラーを作成する機能(直訳そのもの(笑))」です。
例えば、キャラクターの足の支点をくるぶしからつま先に移した状態でアニメーションをつけたい場合、今まではLocatorとコンストレインとアニメーションのベイクを使用して、つま先を支点にしたLocatorのコントローラーを一時的に作らなければなりませんでした。しかし、「Temp Controls」を使うとそのような作業の手間が一気に減ります。しかも、今まではすべてのフレームをアニメーションベイクしなければならなかったところを一部のみベイクすることで編集しやすいアニメーションカーブを保つことができるようにもなります。また、スペーススイッチを行うこともでき、ポリッシュ時などにも有効に使えるすばらしいツールです。そして、ローカルスペースのアニメーションレイヤーとしての使い方もできます。
文章でいろいろ書いているだけでは分かりづらい部分が多いので、実際に使ってみて「Temp Controls」の可能性を探って行きましょう。
「Temp Controls」のインターフェイス
実際の使い方の解説の前に、まずはインターフェイスの説明を行います。
「Temp Controls」を作成する方法
「Temp Controls」のアイコンをクリックすると下のWindowが開かれます。
こちらで「Position」と「Orientation」を選び、下のパレットでコントローラーの色を選んでTemp Controlsを作成します。
ちなみに今回は一番上のSimple Controlのみを使います。
「Temp Controls」を編集する方法
「Temp Controls」のアイコンを右クリックすると上の画像のようにメニューが表示されます。
そのなかで「Temp Contorls Panel」を開きます。
すると「Temp Contorls Panel」が開きます。
「Temp Controls Panel」のインターフェースの説明 | |
---|---|
① | Position(位置)のスペースを選択 |
② | Orientation(回転)のスペースを選択 |
③ | PositionとOrientationのスペースが異なる場合はこのロックを外して選択します。例)人型キャラクターの頭(PositionはローカルでOrientationはグローバルにする場合)など |
④ | Temp Controlsの大きさを変える。左側へ行くと「小さく」、右側へ行くと「大きく」なります。 |
⑤ | Temp Controlsの角度を変える。 |
⑥ | Temp Contorlsの形状を変える。 |
⑦ | 「Add Child Control」。選択したTemp Contorlsの子に新しいTemp Controlsを追加する。 |
⑧ | 「Add Parent Control」。選択したTemp Controlsの親に新しいTemp Controlsを追加する。 |
⑨ | 「Remove Control」。選択したTemp Controlsを消します。 |
⑩ | 「Edit Pivot」。選択したTemp ControlsのPivotを変えることができます。 |
⑪ | 「Reset Pivot」。選択したTemp ControlsのPivotをデフォルト状態に戻します。 |
⑫ | 「Clear and Bake」。選択したTemp Controlsを元のコントローラーにベイクし、Temp Controlsを消去します。 |
Simple Control の使い方
それでは「Simple Control」はどのような時に使えるのでしょうか。
ピボットを替えてアニメーションを作成する
以前の記事で紹介した「Temp Pivot」を使用した場合は作業用に一時的にピボットを替えることが出来るだけで、実際には元々のコントローラーのピボットにキーが打たれます。詳しくは以下の記事を読んでください。
しかし、「Temp Contorls」の「Simple Control」を使用して、ピボットを移動してキーを打った場合にはそのピボットにキーが打たれます。
したがって、ピボットが同じ位置にあるかぎりはアニメーションの連続性が保たれます(キーとキーの間のアニメーションカーブを編集することが出来ます)。
さらに、「Temp Controls」を右クリックしたときに一番上に表示される「Bake Keys」を使用するとピボットの位置を変更した場合も、変更後のピボットに応じて「animBot」がベイクしてくれるのでアニメーションが変更されずにピボットを編集することができます。
簡単にスペーススイッチできる
「Simple Control」を作る時に「Position」と「Orientation」の項目が選べます。
例えば、IKの手はグローバルのポジションでオブジェクトスペース(ローカル)で回転をさせるコントローラーを簡単に作成することができます。また、あとから回転をグローバルに変更することも簡単にできます。ローカルとグローバルを簡単に行き来できるので「Motion Builder(Human IK)」っぽく使用することができます。
ローカルスペースのアニメーションレイヤー
元々あるコントローラーの子や親に新たに「Simple Control」を作ることが出来ます。
例えば、ジンバルロック対策に使えます。
ジンバルロックとRotate Orderについてはこちらの記事をどうぞ。
気の利いたRigの場合は腕のFKのコントローラーは一つだけではなく、その親や子にもサブのコントローラーというものがあります(普段は隠されていたりします)。ジンバルロックでアニメーションカーブが編集しづらいものになってしまうことが少なくありません。そこで、回転する軸をコントローラーごとに分けて使用すればきれいなアニメーションカーブで作業することが出来るので思い通りにアニメーションカーブを編集して、意図した通りの挙動にすることができます。
そして、もうひとつのローカルスペースのアニメーションレイヤーとしての使い方は例を挙げて説明します。
「Simple Control」の使用例
震えながら(怒りなのか寒いのか…)手を握ったり開いたりするアニメーションを作ります。
手を握って開くアニメーション
まず、人差し指の付け根のコントローラーを選択して、PositonとRotation共に「Object Space」で「Simple Control」を作成します。
次に、「Temp Controls Panel」を開きます。
そして、作成したTemp Controlsを選び、「Add Child Control」をクリックします。コントローラーの大きさと形などはお好みで変更してください。
最後に、今作成した子のコントローラーに「震えのアニメーション(stagger)」をつければ完成です。
指を開いたり閉じたりするアニメーションとは別のレイヤーに震えのアニメーション(stagger)をつけることによって、アニメーションカーブを綺麗なままで、管理しやすくなります。
ちなみに、1つのコントローラーだけでこれらのアニメーションを作ろうとすると以下のようなアニメーションカーブを自分で作らなければなりません。
上の2つのグラフエディターを見ればどちらが作業しやすいかは一目瞭然です。
もしも、1つのコントローラーで作成したグラフエディターのアニメーションにリテイクが来た場合は、考えただけでも恐ろしくありませんか…(怖)。
仮にもっと複雑なアニメーション。例えば寒くて震えている人のアニメーションを作る場合を考えてみます。
そこでこの「Simple Control」の「Add Child Control」を使うことで、寒くて震えている人の通常の動作と震えの動作のアニメーションを完全に分離して作業を行うことが出来ます。
これで、「Simple Control」は、グローバルのアニメーションレイヤーよりもアニメーションがつけやすいことが分かったと思います。
コメント