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

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

2020-01-01から1年間の記事一覧

記録

かなり苦労した設計もなんとかなりそうなんで実装開始 それでも所々でうんうん唸りながらコーディング 出来上がったのでテストで実行してみたら一発で上手く行った と思ったら、一部のウィンドウがアクティブにならない問題が 事前調査だとアクティブになる…

記録

一括変換絡みを考えたが思ったよりもだいぶ複雑そう メッセージとスレッドの同期の取り方とか特定の変数をatomicにしないとダメっぽいとか モーダルとかモードレスとかのダイアログの性質を考慮するとか 色々と調査してなんとかこんな感じでいけるんじゃね?…

記録

後処理の実装 内容的にはスクリプトでやってる ちょっととっちらかっていたオブジェクトの管理をちゃんと整理した これで変換時の設定関連はv1と同じ以上になった筈 後は一括変換 これが思ったよりやっかいっぽく色々考えないとだめっぽいかも

記録

スクリプトから出力ファイルテンプレート処理が出来るようになった。

記録

色々やった メイン画面からBMS単体の変換ができるようになった 変換時スクリプトVMの初期化をするようにした 変換時スクリプト関数呼び出しができるようになった 変換時スクリプト関数呼び出し用のC++関数の整備をした 速ければ今月中にはテスト版を出せるか…

記録

昨日も作業したけど記録するのを忘れてた ログ出力実装 ステータスバーにソート状態を表示するように コマンドラインから BMS 指定でリストに追加するように スクリプトのエラーを補足してるか各所のチェック 変換画面のボタンからで、変換したメモリ上の WA…

記録

ソートを実装 同じのを2回押したら逆順にするようにした 画面の大きさ等を保存・読み込みするようにした 流石に他にやること無くなってきたから本流の変換部分の事をやるかな。

記録

色々と落ち穂拾い TODO として後回しにしてた細かい処理を実装とか メニュー・ツールバーに項目を追加 ロングノートの始端と終端が異なっていた場合エラーにするように ロングノートの終端が無かった場合エラーにするように 各種ダイアログのアイコンの設定 …

記録

メニューからの処理関連は変換以外はほぼ全て実装できたかな 変換関連はパーサ、スクリプトの仕様、変換部と色々絡んだ上で設計等をしないと行けないのでたいへんであります。 なのでこの辺は最後にやる予定だけどそろそろやることになりそう。 スクリプト関…

記録

4月~5月は仕事が暇だったのでだいぶ進められたが、最近はまた仕事が忙しくなってきたので進みは遅いかも。 けどだいぶ先が見えてきたので進めるモチベーションは高いかと。 メニュー等からの処理の実装 個別設定のスクリプトでの動作とかいろいろ

記録

各種ツールバー等のアイコンを作成した。 素人なので下手くそだけど、まあ所詮は記号だし

記録

変換設定は全般と出力タブを追加してそれら必要なのを一通り作った そろそろメニューとツールバーを完成させたいのでアイコンを作らねば

記録

変換設定の詰め 出力ファイルのテンプレートの機能の実装 思ったよりも簡単に実装できた 理由としては作ってあった汎用ライブラリが使えた為 変換設定に追加等をする 追加になった設定の設定画面制作 設定画面から設定を読み込み保存できるようにした

記録

色々と考えたけど、出力ファイル指定方法は結局は以前の出力テンプレート機能と同じような機能を提供するのが 一番スッキリするんじゃないかなとの気分になってきた。 エントリーの詳細ダイアログでスクリプトで指定した内容を表示できるように。

記録

エントリーの詳細ダイアログの作成 メイン画面のメニューの作成 ツールバーと整合性を取ったり

記録

まあちまちまと色々やってまする。 出力ファイル決定方法でイマイチ良い方法が浮かばず 出力ファイル名を任意に柔軟に手軽に決めたい需要はあると思ってる なので、かなり細かく指定する方法は用意する予定 これはスクリプトで指定する形で実現する予定 しか…

記録

一応毎日少しずつやってます。 今はCore と被らない部分をやっているのだけどそろそろ被る部分をやらないとダメそうで、そこをいじりだすとCoreの更新が出来なくなるのでどうしようかなと。 でもまあ正式に公開しないと使ってくれる人も少ないし正式版に向け…

記録

コードは書けるところは書いているのだが、どうにも固まってない部分がいくつもあって それが決まらないと書けない書きづらい部分もたくさんあって中々進まない感じ。 まあ設計中とも言えるのだが。まあこの段階はこんなもん。

記録

本体のI/Fについて考慮 当初は ドロップリストで変換設定(名前を付けられる)を複数用意してそれから1つを選択する 変換BMS一覧リストの中のBMSはデフォルトは選択中の設定で変換する BMS毎に変換設定リストの中のどれかを選べば個別の設定にできる という…

記録

本体の一覧表示は searcher の一覧表示とほぼ同じ事から searcher から移植な感じを進める が、結構違うのだけど似てるせいでかなりこんがらがってしまい結構しんどい けど、BMS のヘッダ情報等を表示までは出来たのでそれをベースに色々遣っていくか http:/…

記録

スクリプト関連のベースとなる部分を考えたりする とりあえずはガワと最低限の中身だけは実装する 既に searcher でそこそこやっているのでそれの真似でよさそう 色々と searcher を含めて設計し直しというか整理しないと駄目そう BMX2WAV 本体は思ったより…

記録

正式版の開発はとりあえずは自分制作のアプリの定番骨格を作っていける所まで作っていった。 バージョン情報ダイアログとかそういうの。 ある程度出来たのでここからはどう使わせたいかとかを含めて全体の設計を考えて行く。これはしばらくかかるかな。 分解…

記録

アイコンを組み込む 今までのテスト版を core としてファイル名やプロジェクト名等の整理整頓をする。 本番用のプロジェクトを作成してとりあえず骨組みだけ作成。 http://hitkey.nekokan.dyndns.info/diary2005.php#D200505 unicode 対応 正直言うと経験が…

BMX2WAV v2 Core TEST ( 2020/05/04 )

http://childs.squares.net/program/bmx2wav_new/bmx2wav.html 一部誤字を修正。 ランダム構文選択ダイアログの「構文に従ってチェックする」の際に、適応しない #IF の配下の要素のチェックを外すようにした。 ランダム構文選択ダイアログの表示中の時間は…

記録

メインのアイコンを作成してみた。あまり良い出来ではないがまあしゃーなし。 http://hitkey.nekokan.dyndns.info/diary2005.php#D200502お返事 分解能について 分解能は小節毎に違う値を持つがその値は unsigned int (32bit)で管理してるので現状では約42…

BMX2WAV v2 Core TEST ( 2020/05/01 )

http://childs.squares.net/program/bmx2wav_new/bmx2wav.htmlBMX2WAV v2 のテスト版で、このバージョンより GUI が充実したので1ファイル単位の変換に関しては実用として使えるレベルになったのではないかと思っています。是非とも使ってバグがあればここの…

記録

色々と詰め作業 細かいメッセージの追加とか出すべきメッセージを出すようにするとか 割と例外的なエラー時の動作を実際に確認しながらやるとか あとはメインGUIの整備とか?まあこれは仮なんで適当にやるだけだけど。

記録

ランダム構文用ダイアログの実装 実際の処理に組み込んでみて意図通り動く事を確認 ランダム構文用としては結構画期的じゃないかと 分解能制限指定機能とメモリ使用制限機能を使って Blackcity_spa.bme を変換してみる 分解能は185502721を指定、メモリは240…

記録

変換ダイアログの実装 エラー関係含め複雑ではあったが一通り実装できたと思う 次はランダム構文用のダイアログの実装したら公開可能な感じか。

記録

BMX2WAV 20200426 変換中のダイアログの実装 各処理中での処理とかスレッド処理とか実装 しっかり整理したのでかなり記述しやすくてよろしい 構文解析周りはまだだけど、あと2~3日程度で公開出来るモノが出来そうな雰囲気