[Maya]最近作った&作ってるプラグインなど

最近Maxの記事ばっかり書いてるので、小松くんMax屋になったの?などとよくわからないことを言われて困っています(ぇ
僕は、気持ちがHoudini屋なMaya使いです。要は厄介な感じのアレです\(^o^)/

最近会社のホームユーズ周りのあれこれが整備され、Mayaが自宅で使えるようになったので喜び勇んでMaya用のプラグインなどを開発しております。
っつっても新規であれこれ作ってるわけではなく前作ったやつの練り直しというか、手直し加えてるだけなんですけどね。

で、今回はそれらを紹介することによって、Max始めたの?などという誹謗中傷(おい!)から逃れようという魂胆でございます。


じゃあ一応曲がりなりにも完成したほうから。

こちらは以前作成したBlackbody Radiation、黒体放射のエクスプレッションをノード化したものです。
安易にBlackbodyノードと名づけました。
ノード化した以外は特に何も変わってないので、作業自体は1日半ってところでしょうか。

なぜ今回エクスプレッションからノードに切り替えたかというと、以前のは最低温度、最高温度を一度決めてしまうと、もう変更が出来ないという欠点がありました。
スクリプトが主にPythonで書かれていたこともあり、意図的に動的な変化が行えないような仕様にしてありました。
ExpressionからPythonを呼ぶとかマジキモいと思ってたとか思ってないとか、原因は定かではありません(ぁ

ただしそれを使っていく中で、これ結構不便だなーと思ったりなどしたので、いい練習になるし、と思って今回Pythonノード化としました。
まぁ大した計算量じゃないのでExpressionからPython読んでも良かったのですが、そこはやりキモ(ry
そんな感じです。

適用は手動でなら何にでも使用できるのですが、arrayタイプのoutputを2つも持っているので割りと面倒ということで、簡単なUIを用意しました。そちらから行う際はFluidShapeとRampに適用することが出来ます。
もしそのうちMaya版Fumeなどが出たらそちらにも対応したいところですが、さてさて。

あとExpression時代にやっていたように、FluidやRamp側からパラメータをいじることが出来るように、同名アトリビュートをaddAttrしてノードにコネクトしてあります。これでコントロールもラクラクです。やったね☆

で、次。
Blackbodyのノード化は割と余興みたいなもので個人的に頑張ってるのはこっち。

はい、また性懲りもなくSeExprです。
今回はこのノードをあれこれパワーアップさせようと頑張ってます。

まず上記画像をご覧頂いて分かる通り、頂点のポジション以外にもあれこれいじれるようにしています。
今回はP(位置)、N(法線)、Cd(カラー)、uv(UV座標)の4つのモードを用意することにしました。
上記はCdをいじっているところです。

ちなみにCdというのは完全にHoudiniかぶれな名前の付け方です。Color Diffuseの略でCdなんだそうですが、HoudiniではSOPを中心に非常に一般的なアトリビュートです。

ちなみにテクスチャを表示してUVをいじるとこうなります。

どちらもメッシュの解像度に依存してしまうので、果たしてどうなの?と言われるとアレなんですが、まぁいいじゃないですか。各種ビジュアライゼーションなどにも使えるじゃないですか(遠い目

レンダリングに使う際は頂点カラーをレンダリング出来るようにする何かしらのノードがあるんでしたっけ。やった事無いのでわかりません。すみません。

SeExprの方は、最近Fedora14にOSを入れ替えた関係で、環境整備にしばらく時間がかかってしまいました。
まぁこれは一回やってしまえばいいんですが、いやーめんどいですね。
でもLinuxでの開発はWindowsのGUIベースのものに比べて個人的には好きです。
ただこれまで小規模なものしか扱ってないので、大規模なものになるとどうなのか僕には皆目検討もつきませんが・・・

これもまだ完成ではなく、昨日今日辺りでようやく動いてきたというぐらいな感じにです。更にもう1個2個、新しい機能の追加を行いたいと思っています。

で、今までは割とツールをひた隠しにしてきた(?)僕ですが、というか配布できない事情だったり、しょぼいから配布するまでもないよね、的なアレもあったんですが(実際後者がほとんどです)、今回紹介した2点に関してはもう完全に個人でやってることですし、眠らせておくのも勿体無いということで、是非とも公開したいなと思っております。
ほんで、ただフリーのツールとして公開するのもアレなので、オープンソースで公開する予定でいます。

ライセンスはMITか修正BSDか、とにかく制限のないものを考えております。
あ、でももし何かに使ったら簡単にでいいのでご連絡頂けると嬉しいなー、的な報告クレクレライセンスってことにしますかね(ぇ
やー、作ったものが使われたらどう使われたかはみたいじゃないですか。ね。

とか何とかそういうのはまた公開する際になったらあれこれアナウンスします。
ただまだツールが完成していないこともあって、公開にはまだしばらく時間が掛かりそうです。

ところで公開されたら、どなたか是非Windows版のビルドとか行なって配布するのにご協力頂けると助かります。
僕の方ではLinuxでしか検証出来ていませんし、環境もないので、是非。

ということで中間発表でしたー。
皆でSeExpr書きましょう!!!!!

じゃあの。

コメントを残す

メールアドレスが公開されることはありません。