2014年08月08日

[modo] 0%ウェイトを消すスクリプト

ウェイト設定やモデリングなどをしていると、モデルの一部分や大部分に0%のウェイトマップや0mのモーフマップが作られることがあります。

これらがあると無駄にデータが重くなるため、[頂点マップ>切り取り...]で消すのですが、これは一度に一つの頂点マップにしか使えません。
頂点マップが多い場合、全ての頂点マップに対して「切り取り...」を実行するのは手間がかかります。
(※追記 901でもこれは変わっていません)

なので、0%のウェイトを自動的に消すスクリプトを作りました。

cull_0per_weight.py
(右クリックメニューから保存してください)

動作

選択されているアイテムに対し、全てのウェイトマップ、モーフマップについて「切り取り...」を[切り捨て:0.0][中空域:オン]で実行します。

それ以外のマップ(UVマップなど)には実行しません。また、サブディビジョンウェイトにも実行しません。

使い方

ウェイトマップ、モーフマップを持っているアイテムのレイヤーを表示(目のアイコンをオン)してから実行してください。
スクリプトを適用しないレイヤーでも、ウェイトマップかモーフマップを持っていたら表示する必要があります。

複数のアイテムを選択していても動作します。

切り取りを行うコマンドは、ウェイトは23行目、モーフは36行目です。

lx.eval( "vertMap.cull 0.0 true" )

切り取りの値を変えたい場合はこの数値を変えてください。
中空域をオフにするなら "true" を "false" に書き換えてください。

注意

ポイントやポリゴンを選択していると、選択している所にしか機能しません。

念のため、実行前にデータのバックアップを取ってください。

701、601で動作確認しました。

バグや不都合な点、改善点があれば知らせてください。

posted by 葛 at 18:42 | Comment(0) | MODO
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]