7/7日記 ===== プログラム ===== * 進捗 - ファイル読み込み(最初は同期、可能なら非同期読み込み)\\ 完了。ファイルのセーブ状況検知・UI改善予定 - Miniscriptプログラムのコンパイル\\ 通常の手続きでは完了。ツール上での動作について着手中 - 組込み関数の追加\\ 未済 - コンパイルしたデータとサウンドの譜面を紐づける実装\\ 未済、着手中 - ADSR、フィルタの実装、加えてエフェクトの実装\\ 未済 * ライブコーディングツールは譜面管理・読み込み部分に着手。 * C#で作ったときはStringを結構適当に使っていたフシはあったんだけど、今回はC++なのでちょっと気をつけないとという考え。 * そもそもC#版はどういう管理してたのかというと、Miniscript側のString型をValueという形式に置き換えて、Listで持つ形式だった。 * C#だと多分実体を見て判断だから取り扱いは楽だったけど、C++側の組み込み関数のソースコード見たらポインタを数珠つなぎにして各Valueの形式を毎回調べて動かすという形で管理していた。 * 今回は上記方針に準拠して、String型のListのポインタを扱って管理していく方式にする。 ---- * で、問題なのが上記に紐づいて「Valueをどういう形で動かせばいいのかわからん」事。 * なので、一度適当にお試しするMiniScript読み込むだけのプロジェクトを作成することにした。 * これで安心してお試しできる。 ---- * ちなみに、プロジェクトファイルの中身がめちゃくちゃ容量かさんでこれどうなってんねんって思って中身見てみると、「プリコンパイルヘッダ」を主にして、ブラウザの履歴等が入ってて容量くうみたいね。 * プリコンパイルヘッダだと仕方ないね、ってなってしまう。悲しい。