コンテンツにスキップ

コントローラーを作成する

Blender で RIG を作成する場合のコントローラを作履帯場合
アーマチュアの BONE の見た目を変えることでコントローラー扱いにする。
何故単独のオブジェクトにしないかというと、
モデルを Link で読み込んだときに、アーマチュアの中にコントローラーがあれば
アーマチュア 1 つを Proxy にすればよいから。

準備

まず、ジョイントを作成します。
現在のジョイントの向きがわかるように Axis を表示しておきます。

コントローラーオブジェクトは、オブジェクトのスケールなどではなく
頂点を移動して形状を作ります。
(Maya 的に言えば FreezeTransform した状態)

そして、オブジェクトの原点位置がジョイント位置になり、
軸もジョイントとコントローラーは同じ向きになる。

コントローラーを指定する

実際にジョイントに対してコントローラーを指定していきます。

アーマチュアを PoseMode で選択し、オブジェクトの形状に置き換えたいジョイントを選択します。

そして、Bone のなかの Display→CustomObject に、コントローラーにしたいメッシュを選択します。

じっこうすると、ジョイントの軸にあわせてコントローラー用の Mesh オブジェクトが配置されます。
そのままだとコントローラーっぽくないので
「Wireframe」にチェックを入れれば
ロケーターのように RIG っぽいコントローラーになります。

このコントローラーは、インスタンスになっているので
コントローラー化したあとにメッシュを編集すると
コントローラー側の形状も変わります。

コントローラーの位置のオフセットはできないですが、
「Scale」を変更すると、大きの変更をすることができます。

コントローラーの色を変える

コントローラーの色を変えるには JointGroup を使用します。

色を変えたいジョイントを BoneGroups に入れて、「Color」を指定します。

指定すると、PoseMode 時は BoneGroup で指定した色がコントローラーの色になります。

Wireframe を外すと、SolidColor で塗りつぶされたコントローラーを作ることができます。

簡単なシーンを作ってみる

以前 IK を作るテストでやったような、単純な IK コントローラーとポールベクター。
以前は、個別のオブジェクトでコントローラーを作りましたが、

今回は、こんな感じで、メインになるアーマチュア内に RIG 用の Bone を作成し
それをポールベクターターゲットにしました。

こんな感じで、Bone のアーマチュアを選択 →Bone を選択 のようにすれば
Bone でもターゲット扱いにできます。

需要があるかは謎ですが、サンプルシーンをアップしました。

テストで作成した Blend シーン

おまけ

Maya の感覚だと、1 Blend ファイル=1 MayaScene の感覚になるけれども
その感覚を取り払って、
どのレイヤーも(Blend、Scene、Object など)Maya のシーン1つと同じ扱いに
できると考えるとしっくりくるかも。

今回の場合は、アーマチュアの中身自体が1つの Maya シーンのような構成。
Maya シーン的なシーン(パーツ)が寄せ集まって Link する構成が
Blender なのかもしれない?


最終更新日: 2019-02-09 07:47:53