こんにちは。
今回もMayaで使用するMELスクリプトの紹介をします。
自作ながら、秀逸なツールのひとつかと思います。機能も豊富で非常に気に入っています。是非ご覧ください。
スクリプト概要
機能
- 選択したフェースを厚み付けしソリッド形状を作成。
- 厚み付けされたフェースの設定の取得・更新。
用途
- プレーンから厚みのあるオブジェクトを作成
- グリッドメッシュからタイルを作成 等。
UI・操作
動画
UI
UI:日本語ver・英語ver
(クリックで拡大)
操作
スクリプトを実行してUIを開きます。
-
UIから厚み付け設定を行います。
(基本設定+タイル化オプション+フレーム化オプション) - 厚み付けを行うポリゴンオブジェクトまたはポリゴンフェースを選択します。
- 実行ボタンを押して実行します。
厚み付け機能
- 押し出しの幅
-
押し出しの方向
1.0が法線方向、-1が法線と逆方向、0で両側に均等な幅に押し出し。1より大きくすることも可能です。 -
外周オフセット
正の値で内側にオフセット。
「タイル化」オプション
- タイルの間隔
- 背面削除オプション
隠れるフェースを削除するかどうか -
単体として作成オプション
隣り合うフェースをひとつのタイルにくっつける -
境界エッジ(シーム)を用いた分割
専用のボックスにエッジをあらかじめ登録し、そのエッジを用いてタイルを強制的に分割します。 -
タイル化の方式
"method 1" "method 2" を選択します。これらはそれぞれタイル間隔の基準を 「タイルの下地部分」にするか「タイルの表面部分(浮き出した高さ)」にするかの選択です。(曲面で違いが良く見られます。)
※4.「シームを用いた作成」を実行する際は、ここで追加したエッジの部分は自動的に"method 1"での作成になります。
「フレームを抽出」オプション
-
フレームの幅
注:前述の「厚み付け機能」内「外周のオフセット」に値が入っていると指定した通りの幅になりません。 -
外周からの作成方向
1で内側、-1で外側、0で両側に均等の幅で作成されます。
追加機能
- 作成時設定の取得/更新
-
取得:
ヒストリから作成時の設定を取得します。チェックボックスの項目も取得可能です。タイルの設定を揃えての再作成が容易になります。 -
更新:
作成済みのオブジェクトに対して、ヒストリの数値の更新をします。複数選択対応です。
-
「元オブジェクトを接続」オプション
ヒストリ上流のシェイプノードを差し替えることで、作成後のジオメトリを元オブジェクトのジオメトリに合わせてインタラクティブに編集できるようにします。
なお、接続を切る際はヒストリを削除すればよいです。(その際、接続されていた元オブジェクトも残ります。)Extrudeに関する他のヒストリを残したい場合は、ノードエディターからシェイプノードを繋ぎ直す必要があります。
シェイプノードを繋ぎ直した場合は、そのジオメトリを非表示にするためにアトリビュートエディタから Object Display > Intermediate Object (中間オブジェクト)を有効にするのがよいです。
参考記事:(こちら10年以上前のものなんですね。)
追加説明
- 実行時のUV展開
メッシュ作成時、UVの作成+カット+レイアウトを自動で行います。 -
"Keep Originals"オプション
元オブジェクトを残すかどうかを選択できます。オフの場合は元ジオメトリをそのまま変形させます。
機能についての説明は以上です。
おわりに
このツールはBlenderで言うソリッド化モディファイアの機能をMayaに持ち込む手段はないかと思い考案したものです。
(動画にて、「設定の取得」に触れていないことに気づきました。使っていて気持ちの良い機能ではあるのですが…(同じ設定の別のジオメトリを一瞬で作れます)実際に使っていただければ分かるということで。)
当スクリプトの配布・販売予定については未定(調整中)です。
続報をお待ちください。

