« 月屑 | トップページ | 超 Isolate プラグイン。 »

2007年9月 7日 (金)

6.02 での動作検証

そろそろうちも XSI6 の導入を検討しなければならない時期になってきた感じがする。ライセンスは買ってあるのだが、進行中のプロジェクトの途中で移行するのはあまりにも危険なので今まで避けてた。もうすぐ今の仕事もひと段落なので、このチャンスを逃すと永遠に 5.11 に捕まったまま逃れられなくなってしまいそう。不退転の決意で行かねばなるまい。 5.11 はとても良いバージョンだと思うので名残惜しいが。。

で、現在うちのパイプラインで欠かすことのできなくなってしまった自作プラグイン群 http://homepage3.nifty.com/jjj/XSIFiles/Plugin/JJJ_XSI_Plugins.html だが、これから順次動作検証をしていかなければいけない。そのままじゃ動かないものもあるだろう。さっき XSI6.02 でちょっとだけ動かしてみたところ、

・キャプちゃん!!
・ぬるぬる
・名前。
・超高機能電卓
・タイムショック

は、動いた。 はいカラさんと Go!Go!フォルダはまだ試していない。これ以外にも何十個も自作プラグイン/スクリプトがあるんだが、ひとつひとつ検証するのは大変だ・・・。しかしやらねばなるまい。

ところで問題は、自作ツールの中にもガンガン組み込んで使わせてもらっている xPOP http://www.nycg.org/xpop/ がなぜかうちの 6.02 では動かない。XSI に自分用ポップアップメニューを追加してくれるなんとも素敵なプラグインなんだが、これがないと色んなツールの便利さが半減してしまう・・・。 「xPOP20.dll が無い」と怒られちゃうんだよな。アドオンフォルダ以下の Plugin フォルダを見るとちゃんと xPOP20.dll 自体はあるんだけどな・・・。 うーむ困った困った困った。

ということで。
これを読んだ奇特な方、わたくしの自作ツールを使ったことがあるあるいは使っている珍しいお方に、お願いがあります。


・ここのツールたちは、XSI6.02 でちゃんと動いてますか?

・xPOP はどうですか? 6.02 で動きますか?

を、知らせて頂けるととても助かります。知らせて頂いたお方の中から抽選で1名様に、生ビール1杯(約500ml)をご提供させて頂きます。

|

« 月屑 | トップページ | 超 Isolate プラグイン。 »

コメント

6.02へようこそです。
高機能電卓不意打ちでした。高機能すぎてびっくりしましたw

xPOPですが、6.02でインストールしたところ
エラーは吐かず、起動確認できました。
コレすごく便利ですね・・
PPGレイアウト組むまでも無いスクリプトならかなり便利です。

投稿: Land-Y | 2007年9月 8日 (土) 03時27分

Land-Yさま、ご報告有難う御座います。
感謝します。

先ほど xPOPの原因がやっとわかりました。xPOPの dll ではなく、xPOPが依存している(と思われる)dllへうまくリンクできていないことが原因ようです。mfc71.dll を xPOP20.dll と同じフォルダに置いたら動きました。もともとシステムのフォルダに入っていたんですが、同じフォルダじゃないとリンクできないんですかね。5.11 ではそんなことなかったのに。
このまま動かなかったらどうしようかと思っていました。自殺も考えました。これでどうにか生きていけます。有難いことです。

超高機能電卓に不意打ちを食らって頂けるなんて、これも有難い限りです。スルーされたら自殺ものです。

他のツールで(もし使っていらっしゃるなら)不具合があれば、是非、報告してください。開発者の環境が一番不具合が出にくいわけですから・・・。

よろしくお願いいたします。

投稿: junki | 2007年9月 8日 (土) 04時54分

XSI6、まだ完全移行はしていないので細かいところまでは分かりませんが、xPOP動いていますよ。
キャプちゃん!!とGo!Go!フォルダも組み合わせて使えています。

ちなみにAddonはWorkgroupに入れているので、XSI5.11でインストールしたものをそのまま読んでいる感じです。

投稿: BT | 2007年9月 8日 (土) 04時59分

BTさま、有難う御座います。
GoGo も行けていますか。了解です。助かります。

ちなみにキャプちゃんやGoGoなど Custom Preference を作るものは、現在の構造だと必ずしも初回起動時ではなく例えばプラグインマネージャなどを起動したときにインストールされてしまうことがあるようで、最悪の場合は XSI の起動のときに呼び出されてしまいXSI のインターフェースに戻れないという報告も受けています。なので、コマンドが呼ばれるまでは Custom Preference をインストールしない構造にしようと思っています。まだまだ XSI の挙動をわかっていません。修行が足りません。

それと、うちも Workgroup ですが、BA_Volume など一部のシェーダで共用できないものもあり、しかたなく 5用、6用、共通用と分けています。めんどくさくて死にそうです。

xPOP は便利ですが自分用のポップアップを作るのがちょっとだけ面倒です。表のようなもので編集したらボタン一発でスクリプト部分を書き出してくれるようなツールを、いつか作るかもしれません。作らないかもしれません。

他にも何かありましたら、何卒御報告頂けますようお願い申し上げます。

投稿: junki | 2007年9月 8日 (土) 06時09分

確かにxPOPのメニューを書くのは面倒ですよね。
私はちょっと工夫してメニューの文字と動作を同時に登録出来るようにしてます。
これだけでも結構便利ですよ。
まぁ問題はちょっとスクリプトが長くなるんですけどね。
http://www5d.biglobe.ne.jp/~yos_mov/tmp/testXPop.html

投稿: 善 | 2007年9月 8日 (土) 18時04分

善さま 有難う御座います。

こんな書き方もできるんですか。そもそもプログラミング自体をよく分かっていない自分は、基本的にお手本があってそれをコピペして必要だと思われる箇所を書き換えているいるだけなので、応用が効きません。なので善さんのソースを見てもなんで何がどうなのかよくわかりません。orz

メニューに現れる文字と、それを選んだときに実行されるコードをセットにして書ける=わかりやすい というのが味噌なのですね。それはわかりました。なるほど。xPOP の何がめんどくさいって、後からメニューの構成を変えたときにいちいち何が何番目なのかを数えて、その後の switch 内の番号をずらしていかなければいけないことなんですよね。数字じゃなくて、文字で指定できれば順番が関係なくなって便利だと思うのですが、ええと、善さんのはそういうことをできるようにしたということでしょうか。

ちなみに XSIBlog で、Python でこれを簡単にやる方法らしきものを紹介しているお方がいましたが、
http://www.xsi-blog.com/?p=96
善さんのもそれと同じようなことなのでしょうか。ううむ、よくわかっていない俺。とりあえず XSI のスクリプトエディタ内に善さんのコードをペーストして Run してみたらちゃんと出てきてびっくりしたので、よく解析してみることにします。

まだまだ修行が足りません。
修行に励みます。
修行に励みすぎると、肝心の仕事の納期を守れなくなりそうで困ります。
悪魔の領域です。

投稿: junki | 2007年9月 9日 (日) 11時02分

XSIBlog見ました。情報ありがとうございます。
考えることはみんな一緒ですね。元のソースが見れなかったので詳しくはわかりませんが、コンセプトは同じですね。私が書いたものでいうとfunction xPopMenu部分を配布してる感じでしょうか。もちろん私の書いたものの方が単純ですが
でやりたかったことは言われているようにswitchは面倒なので使いたくない。コピペだけでメニューの順番が変えれたり項目増やしたいってだけです。

実装は単純でaddMenuItem(文字,関数)ってとこで文字列に、渡した文字と;を追加してArrayに関数を突っ込んでます。でpopUpのところでArray[DisplayPopでもらった数字-1]に入ってる関数を実行してます。オブジェクトにしてるのでちょっとわかりずらいかもしれませんね。

知っているかもしれませんが一応補足しておくと関数は変数に突っ込めます。
var testFunc = function (){LogMessage("function");}; //無名関数を変数に代入
testFunc(); //代入した関数実行です。

いつもコメント長くなってすいません。
こういうのはブログでも作ってトラックバックとかにしたほうがいいんですかね。

しかし私はxsiの修行をしないと一年以上もさわってるのにまだ全然使えてないorz

投稿: 善 | 2007年9月 9日 (日) 21時14分

善さま、うーむ、勉強になります。っていうか分からなさすぎて勉強になりません。orz
長いコメントは歓迎です。ただの社交辞令や挨拶ではなく、確実にためになるものなので、どんなに長くてもいいですはい。

function xPopMenu( title, style ) 以降が、私には未知の領域という感じがします。this.なんちゃら の、なんちゃらの部分はプロパティというのかメソッドというのか、ここは私は SDK マニュアルを見ながら真似しているだけなんですが、このスクリプトを見ると、用意されたプロパティやメソッドを使うのではなく、この部分を自分で作っている、という風に見えます。 えっと、勘違い? 頓珍漢なこと言っているようでしたらどうか指摘してください。きっと、JScript そのものの構造とか、「オブジェクト」というものがそもそもよくわかっていないんだなと、つくづく思います。


これ、発表したら喜ぶ人いっぱいいると思います。XSIBase などに投稿してみてはどうでしょう? あるいは xPOP の作者に知らせるとか?
あるいはプログラマな人にはこれくらい当然で画期的でもなんでもないのかなあ。私には画期的ですはい。コードの意味はわかってないけど。

今後の私の自作ツールの中で xPOP を使う場合、このコード使わせてもらってもいいでしょうか?

投稿: junki | 2007年9月10日 (月) 13時42分

はいfunction xPopMenu( title, style )以降はオブジェクトを作ってます。thisは自分ってことですね。変数名はなにが付けられるかわかりませんので、thisっていう代名詞が使えるようになってます。でそれに続くのがプロパティやメソッドという解釈でokです。

発表は英語でやりとりするのがプログラムを書くより大変なので、やめておきます。
それにプログラマではない私でも、すぐ書ける程度のものですのでプログラマならすぐ書けてしまうと思いますよ。

でこのコードですが、改造していただいてもネットで公開されるスクリプトに入れていただいても好きにしていただいて結構です。こうやって使っていただけるのは、やっぱりうれしいですし。

投稿: 善 | 2007年9月11日 (火) 22時00分

書き忘れました。myMenu.addMenuItemのところで長いスクリプトを入れたい場合
myMenu.addMenuItem("test",_test);

function _test(){
LogMessage("test");
});
このように普通の関数を渡すことが出来ますので活用してください。

投稿: 善 | 2007年9月11日 (火) 22時15分

善さま、 超ありがとうございます。
遠慮なく使わせて頂きます。勉強もします。

善さまはプログラマじゃないんですか。
でもこれくらいすぐ書けるんですか。
ええー
悪魔の領域ですはい。

うーむ、私は純粋に絵を作る方面の人間であり、自作ツールは絵作りの効率を上げるために言わば「しかたなく」作り始めたようなもんですが、正直、だんだんプログラミング(スクリプティング?)そのものも楽しくなってきたような感じはあります。
でもやっぱり基礎がないので、根本をわかってないんですね。まーでも自分に必要なものは作れているのでいいことにしましょう。


Land-Yさま、BTさま、善さま、
有難う御座いました。もうすぐ生ビールの抽選結果を発表します。

投稿: junki | 2007年9月12日 (水) 15時44分

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/217974/16367646

この記事へのトラックバック一覧です: 6.02 での動作検証:

« 月屑 | トップページ | 超 Isolate プラグイン。 »