1

私は jlcollisiondeformer を使用していますが、Maya で Python を使用するのは初めてです。

http://wtp-library.googlecode.com/svn/trunk/Library/maya/python/misc/jlCollisionDeformer/jlCollisionDeformer.py

このスクリプトでは、コライダー メッシュに続いて変形するメッシュを選択し、MEL コマンドを実行してスクリプトを実行する必要があります。これはちょっと面倒…。

「「collidermesh」として設定」、「「変形メッシュ」として設定」、「CollisionDeformer を実行」などの 3 つのボタンを備えた単純なウィンドウを表示するプラグインにスクリプトを展開する方法を知っている人はいますか?

ご協力いただきありがとうございます!

4

1 に答える 1

0

これはかなり標準的な Maya の動作です。それを行うためのボタンが必要な場合は、入力できます

jlCollisionDeformer();

スクリプト リスナーに挿入し、中マウス ボタンでシェルフ ボタンにドラッグします。これにより、現在の選択でプロシージャが呼び出されます。mel スクリプトを変更して明示的なパラメーターを取得することもできますが(より明示的であるため、長期的には良い考えです)、スクリプトを作成する (ソースを選択し、ターゲットを選択する) 動作は非常に単純であるため、無駄な作業のように思えます。

Python では、もう少し手間がかかりますが、次のようになります。

import maya.mel
import maya.cmds as cmds

def  CollisionDeform(source, target):
    cmds.select(source, target)
    maya.mel.eval("jlCollisionDeformer()");

次に、任意のスクリプトで、2 つのオブジェクトに対して CollisionDeform を呼び出して、デフォーマを機能させることができます。ただし、オブジェクトを選択して関数を呼び出す UI を作成する必要があります。

シェルフボタンが使いやすいと思います。ホットキー エディタでホットキーを追加することもできます。

ここに画像の説明を入力

于 2013-06-20T17:02:23.767 に答える