BMX2WAV(と他ツール)開発日記

主にBMX2WAVの開発についての記録ブログ

記録

  • メインのアイコンを作成してみた。あまり良い出来ではないがまあしゃーなし。

http://hitkey.nekokan.dyndns.info/diary2005.php#D200502

お返事

  • 分解能について

分解能は小節毎に違う値を持つがその値は unsigned int (32bit)で管理してるので現状では約42億が分解能の限界値。
と言いたい所だけど、実は設定ファイルからの読み込みにWindowsの関数であるGetPrivateProfileInt関数を使用しており、それでは int を使っており大きくても21億ぐらいが限界となる。実際の限界値は正直よくわからない。
これを64bitにするのは可能だけど、修正影響範囲が大きいのと既にこの現状でメモリ爆発してるし実用的とはとても言えないので現状を BMX2WAV v2 の分解能限界値としたいですかね。
こういうBMSに対応を考えるとすると、小さい分解能のままに近い位置に近似させて配置する方法かな。結局の所、WAV の 44.1kHz になるのでそれ以上の分解能は意味が無い事を考えると妥当な方法。だけど、オブジェクトが同位置に重なったときの対処方法が思いつかないのよね。エキストラチャンネルを作ってそこに放り込むとかでいけるか?

  • ストップシーケンスの少数使用

仕様は整数値なので対応したくないのが本音というか、少なくとも何かしらエラーとしてユーザ(主にBMS作者)に報告はしたいか。
まあやれない事は無いんだけど、ソースがチョット汚くなるかなあ。これはちょっと考えどころ。いつか対応しちゃいそう。

  • 変換器向けでない BMS

まあコレは BMS プレイヤーの実装依存な部分を利用した遊び BMS なんで対応は無理ぽ。けどまあこんな面白BMSがあるんですねえ。

http://hitkey.nekokan.dyndns.info/diary2005.php#D200503

  • ランダム構文に関して

そういや言ってなかったけど、ツリーの #RANDOM n とかにもチェックがあるけども事実上意味が無いので注意。まあ判るとは思うけど。
本当ならチェックボタン自体を消すべきなのだけどやり方が判らず。
#IF の選択の際に情報として参照したくなるだろうから表示はしているが、つまりは表示しているだけですってことです。

  • 要望

対応出来そうなので次で対応しまする。