リアルタイム系の3DCG制作に関するノウハウや実践的なTipsを共有するWiki形式のWEBサイトです。


スキンオブジェクトを複製してウェイトコピーするスクリプト

kmjDuplicateCopyWeight


スキニングした後のモデルにエッジを追加したり頂点をマージしたりして編集するとヒストリが残ります。
そしてそのままウェイトを調整しようとすると「非破壊?食べれるの?」って具合に頂点順が変わってしまうため上手くいきませんよね。

そういう時にスキンウェイトを保ちつつヒストリーを整理するためのスクリプトです。SoftimageだとfreezeMでしょうか(おぼろげな記憶)

こんな感じになります
主な機能
  • ウェイトを保ちつつヒストリーを整理する
  • 同時に、移動・回転・スケール・ピボットのフリーズ
  • ウェイトを保ったまま複製
  • ブレンドシェイプなどデフォーマー以外のヒストリーを整理する
  • バインドしていないメッシュにウェイトコピー
更新履歴
2023/10/10複製、ヒストリ削除コピーウェイト時のコピーメソッドを変更
同位置頂点のウェイトコピーが改善されました。
2022/08/10Maya2022(Python3)で動作しなかったのを修正
2022/07/08アトリビュートのアンロックが効かないことがあったのを修正
2020/05/27フリーズの設定が効いていなかったのを修正
ラティス等のデフォーマが複数メッシュに跨っているとウェイトが消えてしまう不具合を修正
2020/04/19バインドされていないメッシュに対して自動バインドしてウェイトコピーする機能を追加
各種フリーズ機能追加。それに伴ってUI無し版の仕様変更
2020/03/25元のインフルエンスから変更しないよう修正
2019/11/14GUI実装。複製、ノンデフォーマーヒストリのみ削除の機能追加。不要なShapeOrigを削除するように修正


ダウンロード

Gumroadからダウンロードできるようになりました!
KMJ DUPLICATE COPYWEIGHT -Gumroadページ-
注意事項
  • 選択したメッシュを複製、ウェイトコピーを行います。
  • 複数メッシュ選択に対応していますが、階層選択はされません
  • skinClusterを持たないメッシュは無視されます(「Copy to Non-Weight Meshes」で別途ウェイトコピーできます)
  • ノンデフォーマーヒストリのみ削除する機能「Delete Non-Deformer and Keep Weight」はアンドゥすると壊れます
  • ウェイトに小数点以下の誤差が出ることがあります

実行方法

  1. Gumroadからzipファイルをダウンロード
  2. zip内のkmjDuplicateCopyWeight.pyをmayaのscriptsフォルダにコピー
  3. スクリプトエディター(pythonタブ)にて
import kmjDuplicateCopyWeight
kmjDuplicateCopyWeight.main()
を実行

Duplicate with Weightウェイト付きの複製
Delete History and Keep Weightウェイトを保持したまま不要なヒストリを削除
Delete Non-Deformer and Keep Weightノンデフォーマーヒストリのみ削除(undoすると壊れるため非推奨)
Copy to Non-Weight Meshesスキンクラスターを持たないメッシュにウェイトコピー
GUIを使用しない場合(GUIを出さずにシェルフ等に登録したい場合)
import kmjDuplicateCopyWeight
kmj_object = kmjDuplicateCopyWeight.KMJ_DuplicateCopyWeight()
kmj_object.duplicateCopyWeight(1,1,1,1,1)
上記kmj_object.duplicateCopyWeight(n1,n2,n3,n4,n5)のカッコ内の数値で設定を変更できます。
n1
1ウェイト付きの複製
2ウェイトを保持したまま不要なヒストリを削除
3ノンデフォーマーヒストリのみ削除(undoすると壊れるため非推奨)
4スキンクラスターを持たないメッシュにウェイトコピー
n2〜n5
1:ON, 0:OFFn2:移動値のフリーズ
1:ON, 0:OFFn3:回転値のフリーズ
1:ON, 0:OFFn4:スケール値のフリーズ
1:ON, 0:OFFn5:ピボット位置のフリーズ

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

※現在 ユーザーID保持者 のみがコメント投稿可能な設定になっています。

Wiki内検索

メニュー

Maya

管理人


管理者:kmj
Twitter:@kmj3dcg
ゲームグラフィックに携わり十数年、現在フリーランスのモデラーとして活動しています。
専門分野:モデリング、テクスチャ、ウェイト(キャラモデルがメインのゲームグラフィッカーです)
お問い合わせはこちらまでお願いいたします。

Amazonアソシエイト

皆様のご協力感謝しておりますm(_ _)m























管理人/副管理人のみ編集できます