Tips

modoで自転車のチェーンを作る

前回のコンストレイントの補正オプションの実用的な使用方法として、自転車のチェーンや戦車の履帯に使えそうなリグの作り方について書いてみます。

modoは複数のアイテムにいちどにコンストレイントを適用できるので、補正オプションと組み合わせると効率的にリグを組むことができて便利です。

チェーンリグ作成手順の解説です。

  1. チェーン用のアイテムとカーブアイテムを用意します。 上の画像では説明を簡略化するためチェーンの赤と青の部分を1アイテムにしてますが、分けた方がよいです。
  2. 「カーブでインスタンス」を使用して、チェーンアイテムをカーブ上に複製します。デフォルトではアイテムの位置にかたよりがあるので、「長さ優先」をONにして均等にします。
  3. 複製したアイテムを全て選択した後に、ようnアイテムを選択しまにして移動がループするようす。modoのコンストレイントのルールとして、最後に選択したアイテムがターゲットになります。
  4. Ctrl キーを押しながらパスコンストレイントを適用します。
    このときコンストレイントの「補正オプション」をONにしておきます。
  5. シーンアイテム(カチンコ)の + ボタンをクリックして、シーン内のパスコンストレイント モディファイヤを全て選択します。
  6. プロパティで「パスパーセンテージ」を編集するとアイテムがパスに沿って移動します。チェーンがループするように「繰り返し」をONに設定します。このままでもアニメーションに使用できますが、毎回モディファイヤを全選択するのは面倒です。そこで全ての「パスパーセンテージ」を1つのチャンネルで操作するためのリグを組みます。
  7. 「パスパーセンテージ」をスケマティックビューにドラッグアンドドロップします。
  8. チェーンを全選択して、Ctrl+G を押して「グループ ロケータ」にまとめます。
  9. グループ ロケータに「ユーザーチャンネル」を追加します。
    「ユーザー名称」には適当にチャンネル名を設定します。ここでは「offset」にしました。チャンネルのタイプは「パーセンテージ」にします。ユーザーチャンネルはユーザーが自由に追加することができるチャンネルです。チャンネルを追加しただけでは意味のあるパラメータではありませんが、他のノードとリンクすることで複数のノードをまとめて制御することができるようになります。Mayaのカスタムアトリビュートと同じような機能ですね。ユーザーチャンネルはどのアイテムにでも自由に追加することができますが、ある程度アイテムと関連性があるほうがよいためグループ ロケータに追加しました。
  10. 「offset」をスケマティックビューにドラッグアンドドロップします。
  11. パスコンストレイント モディファイヤを全選択した後に、プロパティで「パスパーセンテージ」のラベルをクリックしてチャンネルを選択します。スケマティックの「パスパーセンテージ」チェンネルをShiftドラッグします。すると全てのチャンネルから線を引っ張ることができます。
  12. グループ ロケータの「offset」にリンクします。

これで「offset」を1つ編集するだけで、全てのチェーンの位置を制御することができるようになりました。ですがこれだけでは設定が不十分です。

このチェーンアイテムは上下が対称の形状をしているので気がつきにくいですが、カーブの上下でアイテムがフリップしています。一般的にパスコンストレイントのような機能はアイテムの方向を一定に保つことが難しいようです。フリップを回避するために「アップベクトル」を設定します。

アップベクトル設定手順の解説です。

  1. ロケータを追加し「ワールド位置」をスケマティックビューにドラッグアンドドロップします。このロケータがアップベクトル制御用のアイテムになります。
  2. パスコンストレイント モディファイヤを全選択した後にチャンネル ビューポート タブを右クリックして「ビューポート設定 → 結合表示」をONにし、「up」チャンネルをスケマティックビューにドラッグアンドドロップします。「結合表示」は同じタイプのノードが複数選択されたときに、チャンネルをまとめて表示するオプションです。選択中の全ノードの「up」チャンネルを選択するために「結合表示」を使用しています。
  3. 「up」チャンネルをShiftドラッグして、ロケータの「ワールド位置」にリンクします。
  4. フリップしているアイテムのパス コンストレイント モディファイヤを選択して、「ロール」を180°に設定します。
    上の画像ではフリップしているモディファイヤを特定するため、フリップの始点と終点のアイテムを選択してモディファイヤの番号を確認しています。アイテムツリーで F キーを押すこと、選択しているアイテムにリストをスクロールできるので便利です。

これでアニメーションしてもフリップの発生しないチェーンリグの完成です。標準機能だけで手軽にリグが作れるのが便利ですね。

ちなみに静止画用途ならプロシージャルモデリングの「Curve Clone」を使うのが手軽でお勧めです。少し重いですが、カーブの編集や複製する数をいつでも調節できて便利です。
本当は「Curve Clone」でアニメーション用のリグを作れればいいのですが、modo 11.2ではアップベクトルを設定できないのでフリップを回避する手段がないように思います。もっと軽くてフリップしにくい動作してくれたらもっと便利なんですけどね。そのあたりは今後のバージョンアップに期待したいですね。

他の手段としてパスジェネレータで生成した頂点にリプリケータを使う方法も考えましたが、パスに沿わせる部分が上手く行かなかったのであきらめました。

カーブにスプラインデフォーマを適用すると、こんな↓感じの履帯リグも作れるかもしれません。

この戦車のリグを作った Richard Hurrey 氏はPixarで活躍されてるキャラクターモデラー&リガーの方ですが、Foundryからトレーニングビデオをリリースしているmodoのヘビーユーザーでもあります。
この戦車のデータは公開されているので必見です。履帯を複雑な変形に対応するため、履板1つ1つに異なるアップベクトルが設定されてます。他にも細かな制御ができて凄いです。modoはどの程度のリグを構築できるか興味ある方にも参考になるのではないでしょうか。

今回は王道的な方法でチェーンを作ってみました。次はせっかくなのでスプラインデフォーマを使用したチェーンの作り方を書いてみたいと思います。

Modo Tips



 

記事のまとめページ

コメントを残す