MODO 機能紹介・チップスサイト このサイトでは、MODOの基本機能やチップスをご紹介していきます。

ベジェカーブを利用したキャタピラの作り方

https://www.youtube.com/watch?v=BnGkTa2RiU0

日本語解説ビデオ「ギアベルトのリグの組み方」ではスプラインデフォーマを使用して、ギアベルトを組む方法というのをご紹介しましたが、今回はベジェデフォーマとプロシージャルモデリングを組み合わせて、キャタピラを簡単に作成する方法をご紹介します。

まずは正円からベジェカーブを作ります。すべての元となるオリジナルのカーブです。最初にShiftキーを押しながら球体作成ツールで単位球を作ります。次にエッジモードへと切り替え、ヘリのエッジをダブルクリックして、ループ状に選択します。モデリングツールのカーブサブタブにあるエッジをカーブへでまずスプラインへとエッジを変換します。新規メッシュを作成オプションをオンにしておくと、新たなメッシュにカーブだけを作成してくれます。カーブが作成出来たら、カーブを選択し、カーブをベジェへを実行します。これでベジェカーブの出来上がりです。

今度は、キャタピラ用のベジェカーブを作ります。こちらはカプセルのプリミティブから作っていきましょう。先ほどと全く同じ手順で、ベジェカーブを作ります。

オリジナルの円形のカーブが、キャタピラのカプセル形状のカーブに変形するよう、円形のカーブに対して、ベジェデフォーマを適用します。メッシュオペレーションのタブからオペレータ追加エフェクタ ベジェエフェクタを追加し、選択メッシュを使用オプションをオンの状態で、OKボタンをクリックします。ベジェエフェクタのタブから、ターゲットカーブをCapsuleに設定します。

次にキャタピラを表現するのに、部品を複製して配置します。元となる部品は、ボックスツールから作っていきます。部品を作ったら、これを配置します。配置するのに使用するのは、カーブ上にポイントソースを作ってくれるCurve Particle Generatorと、そのポイントソースの位置に元のメッシュを複製していくリプリケータです。

アイテムリストのアイテム追加から、パーティクルカテゴリにあるCurve Particle Generatorリプリケータを追加します。まずCurve Particle Generatorを追加したら、ソースカーブをオリジナルの円形カーブに指定します。次にリプリケータの原形となるアイテムを先ほど作成した複製元となるメッシュ、そしてポイントソースにCurve Particle Generatorを指定します。そうするとキャタピラ用カーブに沿って複製元のメッシュが配置されました。配置の向きに関しては、Curve Particle Generatorの前方軸、または複製元のトランスフォームを調整して正しい向きとなるように設定します。

このままであれば、Curve Particle Generatorのソースカーブをわざわざ円形のカーブにしなくても、最初からキャタピラ用カーブにしておけばいいようなものですが、円形のカーブをアイテムモードで回転させてみましょう。そうすると、きれいにカーブが回転し、それに沿って、複製されている部品もベルトコンベアに乗っているかのようにきれいにアニメーションするようになりました。この効果を求めるため、ベジェデフォーマを使用して、正円のカーブをキャタピラ用カーブに変形させているのです。

では、部品と部品の間をつなぐメッシュを作りましょう。この部品は押し出しの処理で作ります。簡単に断面となる板ポリゴンを作ったら、オペレータ追加複製 Curve Extrudeを追加します。パスとして円形のカーブメッシュを指定します。そうするとこちらもキャタピラ用カーブに沿って押し出されるようになりました。キャタピラ用の部品の配置と押し出しのセグメントを合わせるには、スケマティックビューからCurve Particle Generatorのポイント数を、カーブで押し出しのステップ数と合わせるようにします。そうするとポイントソースの数を調整するだけで、それにそったカーブの押し出しが行われるようになります。

再度、円形カーブを回転させてみると、どちらの部品も正しく配置や押し出しが行われた状態で、ベルトが動いています。この状態でも良いのですが、さらにキャタピラをよく表現するため、少しチェーンに対するたるみなどの動きを加えてみます。

円形カーブを選択し、さらにトランスフォームを追加してみます。オペレータ追加エフェクタ Transform Effectorを追加すると、トランスフォームをコントロールするためのエフェクタが追加されます。このエフェクタの位置Yに対して、揺らぎを与えてあげます。スケマティックビューへと位置Yのチャンネルを追加したら、追加 チャンネル Channel Noiseを追加し、出力を位置Yへと接続します。ただ、この状態だと全体が上下に動くだけですので、オペレーションリストからトランスフォームを展開し、フォールオフ (フォールオフを追加)Texture Falloffを追加し、動きの影響範囲をテクスチャでコントロールします。Texture Falloffを展開し、テクスチャロケータ (テクスチャロケータを追加)からノイズ系のテクスチャを追加し、このテクスチャロケータのサイズを調整して、揺らぎの大きさを調整します。

このような組み合わせで、簡単にキャタピラの動きを表現することができました。スプラインデフォーマを使っても構いませんが、こういった閉じたカーブ形状の場合、ベジェデフォーマを使ったほうがより滑らかになりますので、ぜひ試してみてください。

2021年3月5日