2006年09月02日
ジェネレータとエフェクタ modo 202
modoを弄っていて興味がありながらいまいちよく分からないのがツールパイプだ。ここで複数の機能を組み合わせて新しいツールを作れると言われても、じゃあどうやったら出来るんだよ?って思った人も多いんじゃないだろうか。マニュアル読んでもあんまり触れられていないし、なんだかなぁって感じだ。まあ愚痴を書いても始まらないので、ここではちょこっと分かったことを書いておくことにする。マニュアルに書いてあるわけではないのでガセである可能性もある事は予め断っておく。
さて、ツールパイプは機能を組み合わせる事が出来るので、当然組み合わせるための部品が数々用意されているわけだ。代表的なものにアクションセンター・アクションアクシス・フォールオフなどがある。作業する時の中心点と座標軸、効果のかかり具合を組み合わせられるわけだ。これについてはマニュアルにしっかり書いてあるので今回は触れない。今回触れるのは複製系のコマンドの元になっている部品であるジェネレータとエフェクタについてだ。ジェネレータは作業の基準となるパスや基準点(パーティクル)を生成する働きがあり、エフェクタはチューブ状の図形を生成したり、インスタンス生成、掃引などをする機能だ。これらをまとめるとこうなる。
| Generator Tools | ||
|---|---|---|
| 名称 | 機能 | 生成種類 |
| gen.curve | カーブでパスを生成 | パス |
| gen.bezier | ベジェ曲線でパスを生成 | パス |
| gen.pathsteps | パスからペーティクルを生成 | パーティクル |
| gen.helix | 回転軸を指定して円環状のパーティクルを生成 | パーティクル |
| gen.radial | 中心点と半径を指定して円環状のパーティクルを生成 | パーティクル |
| gen.sweep | 円環状のパーティクルを生成? | パーティクル |
| gen.array | 3軸に沿った直方体メッシュの交点にパーティクルを生成 | パーティクル |
| gen.scatter | 直方体内にランダムにパーティクルを生成 | パーティクル |
| gen.linear | 直線状に等間隔でパーティクルを生成 | パーティクル |
| Effector Tools | ||
|---|---|---|
| 名称 | 機能 | 入力種類 |
| effector.clone | パーティクルの位置に形状を複製 | パーティクル |
| effector.sweep | パスに沿ってポリゴンをスイープ | パス |
| effector.item | パーティクルの位置にアイテムやインスタンスを作成 | パーティクル |
| effector.tube | パスに沿ってチューブ状のメッシュを生成 | パス |
| effector.cutter | パーティクルに沿ってメッシュをスライスする | パーティクル |
ここで注目すべきはEffectorの入力種類とGeneratorの生成種類である。これが一致しないと動作しない。例えばArrayでSweepなんてことは出来ない。エフェクタのスイープはパスを入力しなくちゃならないからだ。逆にパーティクルを入力するタイプのCloneはパスを入力出来ないが、Pathstepsを組み合わせることでパスからパーティクルを生成して使うことが出来るようになる。この仕組みを使ったのが標準プリセットのカーブクローンである。ところでこれらの機能のツールパイプへの追加の仕方だが、
tool.set effect.item on
のようにすればよい。
自分はいろいろ試せるようにこのようなフォームを作ってみた。(現在はeffector.cutterも追加済み)
Curve PathとPathSteps GeneratorとClone Effectorを組み合わせると、このようにカーブクローンとして働く。curve pathのかわりにBezier Pathをチョイスすれば曲線をベジェ曲線で描くことが可能になる。
さらにClone EffectorのかわりにItem Effectorをチョイスするとコピーのかわりにインスタンスを生成させることも出来る。
こうやって作ったプリセットを保存しておけば、普通のツールと同じように使えるというのが凄いところなわけだな。せっかくの機能なんだから、早くEffectorやGeneratorをユーザーが作る手段を提供して欲しいもんである(いや、あるだけで知らないだけかも・・・)。
一応試せるようにフォームのcfgファイルをアップしておく。使い方はスクリプトをいつも置いているフォルダの隣のフォルダーにConfigsというのがあるからそこに展開したファイルを置いてmodoを起動するだけでフォームとして登録される。あとはLayoutメニューからwindow → new windowで新しいウインドウを生成し、ウィンドウ右上の三角ボタンをクリックしてFormViewを選択。もう一度三角ボタンをクリックしてViewportSetteingsのMatrixToolsを選択するだけだ。
必要なくなったらこのファイルを削除してからフォームエディタを立ち上げてMatrix Toolsの項目を探し出して削除してくれ。
いろいろ弄ってるとAutoActiveやAutoDropなんかも使い方がなんとなく分かってくるよ。ツールはセットしただけじゃアクティブにならないからね。くれぐれもこの設定ファイルを読み込んで設定ファイルが壊れたとか文句言ってくるなよ。実験する前に設定ファイルはちゃんとバックアップを取ろうね。それではまた次回。
追加:
Marsさんのブログ読んだらカッターエフェクタ−の紹介が書いてあったので追加した.。RadialGeneratorとeffector.cutterの組み合わせは正弦波状にポリゴンを切ったり出来る(使い道があるかは別として・・・)。

