テクスチャ取得できた

march

2007年11月29日 01:08


Wikiの http://wiki.secondlife.com/wiki/Image_System とかを読んで事前に知っていたが、
テクスチャを見るとJPEG 2000形式だった。
JuGeMu JPEG2000 viewerとかというビューアをDLしてきて表示する。http://www.jugemu-tech.co.jp/download/viewer.html
このへんでサンプル画像をみつけて表示確認。http://toppen.jp/bunka/b0601.html
拡張子がj2kだと駄目で、同じファイルで拡張子をjp2にすると表示できた。
ちなみに最初に表示できたのは、赤い車とAnalogさんの名前入りの画像でした(^^)

で、あとでImageMagickでもコンバートできたのだが、
Windows版をインストールする際に、PATHもついでに追加しておいてと言ったら、
既存のPATHを消して自分のPATHだけにしやがった。くそったれ。
たまたま他にもコマンドプロンプトを開いていたので助かったが、不届き千万である。
しかも「convert.exe」はファイルシステム(NTFSとか)を変換するために使われている名前なので、
扱いづらい。

あいかわらずos.execvはIronPythonでうごかず。「NameError: name 'execv' not defined」と出る。
os.spqwnvは、引数をつけると一文字ずつコマンドに渡すという間抜けな動作をする。
仕方ないので、バッチファイルにずらずら書いて、あとでspawnvで引数無しで呼び出す方法に。
ますます他人に見せづらいコードになっていくなぁ。。。

ImageMagickでも変換できない画像がある。うーむ。


UUID名でjpgファイルに変換できたんで、検索画面に表示させてみる。
箱詰めで売っている物だと説明がきが載ってるので好都合だが、
自動車とか椅子とかそのままの外見で売り物になっていると、
ボディーのテクスチャや木目のテクスチャが、このアイテムを代表するテクスチャだと思ってしまうのが現状。
確かにそのとおりなんだが、椅子を探している人は椅子の外見を知りたいはずで
材質を知りたいわけじゃないだろう。



スレッドプールが足りないとかで「Process is terminated due to StackOverflowException.」と
出て落ちるので、なんとかせねば。
client.Assets.ImageReceivedCallback で別スレッドにしてるんじゃないかと推測。
要求しても返ってこないので、そのまま残り続ける。
スレッド起こすのをハンドルしてるわけではないので、どうしたもんか。。。
とりあえず、名前とか価格の情報を取るスクリプトと、テクスチャを取るスクリプトは分けることに。
テクスチャのほうは、1つずつイベント待ちさせて気長に取ろう。