title: j3dbvh ChangeLog

2010,07/01
----------------------------------------

Windows7で起動できないのは問題なので，
とりあえずWindowsXPとWindows7の両方で
起動できるランチャになおした(はず)．
実装方法は_spawnvpeでCLASSPATH,PATH,
TEMP,TMPの環境変数だけ自前で用意して
わたしてやる方法を採用．

ただしWindows7ではランチャのあるフォルダに
%SystemDrive%\ProgramData\Microsoft\Windows\Caches\...db
というフォルダ・ファイルが作成される．
これ以外に害がなければ良いのだが．．．

ランチャが動かなかった時のために
バッチファイルも作成しておくことにした．

2010,06/30
----------------------------------------

(この文章はA3Board,A3Editor,A3Viewer,j3dbvh,j3dvrmlに
共通の内容として書きます．)

Windows7の64ビット環境でいくつかのアプリのランチャが
起動しなかったり，起動しても上手く動かなかったりして
いた．あわてて色々ためしたけれど，うまくいったり
いかなかったりでどうしたら良いのかわからなくなった．
今は日本語環境オンリーで考えてるけど，国際化を考慮して
UNICODEを使う．．．とか考えたら，正解にたどりつくまでには
時間がかかりそう．とりあえずの実装を作っておいて時間を
見付けて出なおそう．

-----

忘れないようにメモだけしておく．06/28の変更でWindowsXPの
32ビット環境では上手くいっていた．29日にWindows7の64ビットで
実行してみると問題があったので，とりあえずWindows7の64ビット
環境でランチャをコンパイル・リンクしてみたけど，問題は
解決されなかった．そこでjavaw.exeでなくjava.exeで
実行するようにランチャを書き換えて確認したら，何やら
テンポラリファイルが作成できていないような例外が発生
しているのを発見．そこでランチャのプログラムにTEMP環境変数の
設定も書き加えたらうまくいった．でも，一部のアプリでランチャの
置いてあるフォルダの中に，たしか「%SystemDrive%」のような名前の
フォルダが作成されて，その中に何かキャッシュファイルのような
物ができていた．なので，まだ何か足りない環境変数が
あるのだろうと思いVC++でGetEnvironmentStrings関数を利用して
全ての環境変数をコピーするようなプログラムを作成したら
キャッシュファイルも作成されなくなったようで一見落着かと
思われた．それでもう一度WindowsXPの32ビット環境で実行して
みると，また日本語フォルダの問題が再発していてた．これは
もしかすると環境変数で指定された文字コードとかロケールの
ような情報が問題の根源になっていることを示しているのかも
しれない．試しにWindows7の64ビット環境でも日本語フォルダを
試したらダメだった．

ちなみにTEMPフォルダのデフォルトは
「%USERPROFILE%\Local Settings\Temp」みたいなので，
ユーザ名が日本語だった場合にはパスに日本語が含まれる
ことになると思う．そういう場合にも大丈夫なように
TEMP環境変数を書き変えて日本語フォルダでも大丈夫か
確認しておくべき．

それとTEMPでなくTMP環境変数はまだ試していないので
これもチェックすると良いかもしれない．

それからそれから，最初にランチャを64ビットでリビルド
してからmakeCPP.batとランチャを32ビット用と64ビット用に
わけてしまったけど，その必要はないかもしれないので，
これも確認してみるべし．

2010,06/29
----------------------------------------

Windows64ビットでランチャが起動しなかったのでWindowsの
64ビット環境でコンパイルしなおしてみた。それだけでは
だめな場合もあったので、環境変数をすべてコピーして
CLASSPATHとPATHだけ変更するようにした。そうしたら、
日本語フォルダの問題が勃発したので、TEMP環境変数
の指定でまた対処。でも、Windows64でしか試してない。
時間切れ。

2010,06/28
----------------------------------------

今までWindowsのランチャは日本語フォルダが
パスに含まれる場所に置かれると起動できなかった。
理由はわからないけど、_spawnvpでなく_spawnvpeを
使ってコマンドライン引数ではなく、環境変数として
CLASSPATHとPATH(DLLを読み込むフォルダ)を指定する
ことで回避できた。これでいいのかな？

2010,04/22
----------------------------------------

デフォルトウィンドウサイズ変更。

2010,04/16
----------------------------------------

メジャー表示機能など追加．

2010,04/15
----------------------------------------

デフォルトポーズの表示とBoneの選択表示ができるようにした。

2010,04/14
----------------------------------------

pauseしてスライダーでモーションを確認できるようにした。

2010,04/13
----------------------------------------

j3dbvhの変更でなくAcerola3Dの方の変更だけど、
BVHの回転のチャンネルの順番がZ,X,Yでない物も多数ある
ということに今ごろ気がついた。Z,X,Yの順番でない場合でも
きちんと読み込めるように対応した。ついでに回転以外の
変換の順番もBVHのチャンネルの宣言どうりの順番で適用する
ようにしてある。

2010,04/12
----------------------------------------

ドラッグアンドドロップに対応した。Windowsのエクスプローラや
MacOSXのファインダからファイルをドロップすれば簡単にファイルを
開けるようになった。でも例によってLinuxでは動かなかった。

2010,03/31
----------------------------------------

WindowsとLinuxで64ビット版バイナリパケージを
作成できるようにした。
(MacOSXは初めからユニバーサルバイナリ)

2010,03/12
----------------------------------------

Windows,MacOSX,Linuxに最適化した
バイナリパッケージも簡単に作れるようにbuild.xmlを
工夫してみた。

2009,12/07
----------------------------------------

jp.sourceforge.acerola3d.a3.Skeletonを使った
実装に書き変えました。

環境変数などを参照して柔軟にセットアップできるように
build.xmlを書き変えました。
