Ryusuke Sasaki氏が Mayaにて、Pythonによるエクスプレッション機能を提供するノードプラグイン『maya exprespy(エクスプレスパイ)』をGithub上で公開!
Pythonリガーは導入必須のプラグインなのではないでしょうか?
maya_exprespy
Maya で Python によるエクスプレッション機能を提供するノードのプラグインです。 exprespy(エクスプレスパイ)と呼びます。
特徴
本プラグインでは速度を重視し、ノードは C++ で実装されています。 また、それによって、Python によるエクスプレッションコードは一度だけコンパイルされメモリ上に保持され、 以降はコンパイル済みのコードオブジェクトを実行する仕組みを実現しています。 つまり、実行時の効率が良いものとなっています。
また、標準のエクスプレッション機能と同様に、エディタ(アトリビュートエディタ)上では、 実際のノード・アトリビュート名でのコーディングが可能です。 それらは、標準機能と同様に、実際はノードのコネクションに置き換えられるようになっています。
ただし、単位変換の機能はなく、内部単位で直接扱われます。 少し初心者向けでない部分ですが、これも効率重視たる所以です。
さらに、Python API 2.0 の型に対応し、double3 や matrix アトリビュートを直接入出力することが可能です。
類似技術
Python でエクスプレッションを書けるようにするプラグインは SOuP に含まれる pyExpression ノードが有名です。 しかし、それは全て Python で実装されており、 Python のエクスプレッションコードは exec() 関数によって実行される仕組みで、 実行するたびにコードをコンパイルするため効率的ではありません。
また、標準で付属する MASH には Python ノードがあり、Python でモーショングラフィックスを制御することが出来ます。 ただ、それは particle データを制御する仕組みで、それに特化された性能は素晴らしいですが、汎用的ではありません。
以上、Githubページより引用
是非お試しあれ!
コメント