Tips

modoでグリッドアセンブリの作り方

手続き的にグリッドを表示するアセンブリの作り方を書いてみます。

modoのロケータはデフォルトで十字アイコンですが、「シェイプ」を「カスタム」にすることで、リギングに使えるプリミティブ形状を設定することができます。LightWaveには「Item Shape」という同じような機能があるのですが、modoに搭載されていないシェイプ形状として「 グリッド 」があります。

modo11.0からプロシージャルメッシュを「ワイヤフレーム」表示することができるようになったので、プロシージャルのCubeをリギングすれば簡単にグリッドのアセンブリを作ることができます。

アセンブリの中身はこんな感じです。

作り方で迷いそうなのは、軸XYZを切り替えたときにCubeのサイズXYZへの出力を切り替える部分でしょうか。
軸の切り替えはチャンネルタイプ「軸」の値を、条件式ノード「A は B と等しい」を使用してスイッチしています。値が等しい場合は「1」を、値が異なる場合は「0」を出力します。
あとは条件式ノードの出力値を演算ノードで乗算することで、指定された軸にみえるCubeの「サイズ」にのみ「Scale X」「Scale Y」の値が流れるようにしています。

スクリプトとかプログラム的なことはよくわからないので、条件式を使った切り替え方法としてこういう使い方が正しいのかわかりませんが、やりたいことはできている気がします。

補足ですが、ビューポートでアイテムをワイヤフレーム表示するには「3Dビューポートプロパティ / アクティブメッシュ」で、「描画スタイルの独立」をONのする必要があります。

 

Cubeの大きさに合わせてセグメントの分割数を増やす動作は、モデリング系のアセンブリにも使えるんじゃないかと思います。

コメントを残す

*