2016以前では動いていたエクスプレッションが
私の環境で確認できる範囲では2020以降のバージョンで動作しません。
例えば以下のようなエクスプレッションです。
float $x = `getAttr pSphere1.tx`;
setAttr pCube1.tx $x;
この場合、内容的には単純にpCube1.tx = pSphere1.tx;と同じで
その書き方なら問題なく動作するのですが
遅れて追従する動きをエクスプレッションで再現したいためmelコマンドを使いたいのですが
最近のバージョンのmayaだと上手く動いてくれません。
どこかのタイミングで仕様変更があったのでしょうか?
解決済! 解決策の投稿を見る。
回答者: SOTOMEA. 解決策の投稿を見る。
こんにちは。
実際にどのようなエクスプレッションなのか分からないので何とも言えないのですが、もし大きな仕様変更があれば多くのユーザに影響が出そうです。
使用しているコマンドに以前は問題があり、それが修正されたためとかでしょうか。
いずれにしても実際にやりたいことのサンプルがあれば、もう少し詳しい情報が得られるかもしれません。
ご返信ありがとうございます。
サンプルシーンを添付致します。
maya2016では正常に動作しますが、2023で開くとエラーが出て動作しません。
参考にしたのは↓こちらのサイトの下段の方に記載されているエクスプレッションです。
//pCube0のアニメーションをpCube1~pCube9が1フレームずつ遅れて追従するエクスプレッション
for($i=1; $i<9; $i++){
float $valT[] = `getAttr -t (frame - $i) pCube0.translate`;
float $valR[] = `getAttr -t (frame - $i) pCube0.rotate`;
float $valS[] = `getAttr -t (frame - $i) pCube0.scale`;
setAttr ("pCube" + $i + ".translate") $valT[0] $valT[1] $valT[2];
setAttr ("pCube" + $i + ".rotate") $valR[0] $valR[1] $valR[2];
setAttr ("pCube" + $i + ".scale") $valS[0] $valS[1] $valS[2];
}
お探しの情報が見つからないときは、コミュニティで質問しましょう。困っている人がいたら、情報を教えてあげましょう。