BmsONE
ダウンロード (beta 0.2.1)
1. 概要
BmsONE は新しい音楽ゲームフォーマットである bmson ファイルを編集するためのアプリケーションです。
bmson フォーマットについての情報は、参考リンク をご覧ください。
現在、v1.0 および v0.21 の bmson ファイルに対応しています。
ただし、一部の情報はまだ編集することができません。
2. 使い方
2.1 注意
このソフトは開発途上のため、機能が不十分であったり、不安定な動作をすることがあります。
Mac版は特に頻繁にクラッシュすることがあるので気を付けてください。
Bmson 制作時にはこまめにセーブすることをお勧めします。
また、編集する bmson ファイル(念のため音声ファイルも)はバックアップを取っておきましょう。
また、以下の説明でCtrlキーといっている箇所は、Mac版ではCommandキー(⌘)のことを意味します。
2.2 音声チャンネルの追加
[チャンネル] → [追加] で使用する音声ファイルを選択します(Wav、Ogg Vorbis に対応しています)。
あるいは、音声ファイルをウィンドウ内にドラッグ&ドロップすることでもチャンネルを追加できます。
2.3 音声ノーツの配置
このソフトには「編集モード」と「書込モード」の2つのモードがあり、
これらを使い分けることで効率よく譜面を作成することができます。
音声ノーツを配置するためには、まずは鉛筆のアイコンをクリックして「書込モード」にしてください。
次に、ノーツを配置したい音声チャンネルを選択します。
シーケンス表示部には各チャンネルに対応したBGMレーンが並んでおり、選択中の列が明るく表示されます。
暗くなっている列をクリックするとそのチャンネルを選択できます。
Bmsonには「音を最初から再生するノート」と「その部分で音をスライスするノート」の2種類のノートがあり、
[Shift+クリック] すると前者を、単に [クリック] すると後者を配置できます。
(音が鳴っていない部分にスライスノートを配置すると無音ノートとなります。)
また、既存のノートを右クリックすると削除されます。
BGMレーンの背景に波形が表示されていることにお気づきでしょう。
緑色の波形はその部分がBGMレーンのノートで鳴ることを、橙色はキー音として鳴ることを表します。
「編集モード」では、ノーツを範囲選択したりドラッグで横移動させたりすることができます。
また、選択したノーツ上で右クリックし、「BGM(キー)レーンに移動」を選択すると
キー音レーン上のノーツをBGMレーンに移動、あるいはその逆ができます。
Shiftキーを押しながらノーツをドラッグすると、ノートの長さを変更できます。
通常のノートは長さ0なので、ロングノートを解除したい場合は限界まで長さを短くしてください。
「編集モード」での範囲選択は、Ctrl、Alt、Shiftキーを組み合わせることで振る舞いが変わります。
例えば、Altキーを押しながら範囲選択すると選択中のチャンネルのノーツだけを選択できます。
譜面またはBGMレーン上で [Alt+右クリック]、あるいはノーツまたはBGMレーン上で [中央ボタンクリック]
すると、クリックしている間だけ現在の音声チャンネルのその時点での音声をプレビューできます。
(Macでは Controlキー(Commandキーではない)+クリックで右クリックの代わりになります。)
マスターレーン上でクリックすると、クリックしている間だけ曲全体をプレビューできます。
これらのプレビュー中にCtrlキーを押すと、再生位置に従って譜面が自動でスクロールします。
2.4 その他
[情報] ウィンドウでは曲の基本情報を入力できます。
初期BPMはノーツの配置時の操作性に影響するので最初に設定しておきましょう。
小節線はシーケンス表示部の左端にある、小節番号が表示されている部分を [Ctrl+クリック] することで
編集できます。小節番号が灰色の小節線は4拍子で自動挿入された一時的なものであり、他の小節線を
挿入したり削除した際に変化することがあります。
BPMイベントは小節番号の隣のレーンをクリックすることで編集できます。
BPMイベントを配置または選択すると、BPMを入力するための小さなツールバーが現れます。
BGAデータや他の拡張データの多くはまだ編集できませんが、未対応のデータを持つファイルを
このアプリケーションで編集してもデータは保持されます。
なお、「情報」(bmsonフォーマットの BMSInfo 部分)の拡張データは「拡張情報」欄で
次のようにJSONの断片を直接入力することで編集できます。
"updated_at": "14:00 2015/11/14",
"registered_with": "The Forgetalia"
設定ファイルが次のようなディレクトリに保存されます。
ウィンドウの位置がおかしくなってしまった場合は削除してみてください。
[Windows] C:\Users\<USER>\AppData\Local\BmsONE
[Mac OS X] ~/Library/Preferences/BmsONE
画面のスクロール時に頻繁にクラッシュする場合は、 [表示] - [音声チャンネルのレーン表示] - [シンプル]
を選択してみてください。チャンネルごとの波形は表示されなくなりますが、安定性が向上します。
音声チャンネルがたくさんあるbmsonの譜面編集が大変に感じたら、以下のことを試してみてください。
- [表示] - [音声チャンネルのレーン表示] - [コンパクト] または [シンプル] を選択してレーンを細くする。
- [チャンネル] - [検索] - [活性チャンネルのみ] および [検索結果のみ表示] を選択し、
近くで演奏されているチャンネルのレーンのみ画面に表示されるようにする。
3. 免責事項・使用条件
BmsONE の作者である exclusion はこのソフトを使用して生じたいかなる損害の責任も負いません。
また、このソフトを用い、音楽CDやゲーム等から抜き出したデータを使った違法な bmson データを
作成することを禁止します。
このソフトの再配布はアーカイブの内容を改変せず無償の場合に許可します。
このソフトは Qt をLGPLライセンスで使用しています。
同梱されているdllファイル(Mac版はapp内のFramework、PlugIn等)の類は Qt のものですので、
異なる版の Qt と差し替えて利用しても構いません。ビルド設定の情報は次項を参照してください。
不明な点がございましたらご連絡ください。
4. 開発環境
[Windows版]
- Windows 10 Pro
- Desktop Qt 5.9.1 MSVC2015 OpenGL 32bit/64bit
[Mac版]
- Mac OS X 10.10.5
- Desktop Qt 5.9.0 clang 64bit
[共通]
- Xiph.org 様の libogg 1.3.2、libvorbis 1.3.5 を使用しています。
5. 連絡先
exclusion
GitHubのソースコードリポジトリ: https://github.com/excln/BmsONE
バグ報告などについてはこちらのIssuesに投げていただけるとありがたいです。(日本語でも可)
ご自身での修正が可能な場合、リポジトリをForkして修正し、
Pull Requestを作成していただいても構いません。
6. 参考リンク
-
bmsonフォーマットの公式サイトです。
-
bmsonの作り方とプレイ方法が書かれています。(日本語)
-
bmsonフォーマットの仕様案と詳細な解説が書かれています。(英語)
次期仕様を話し合うための場なので、各種ソフトが対応していない要素が含まれます。
興味のある方はぜひコメント等を書き込んでみてください。
-
DAWの音声書き出しからエディタの使い方まで、bmson制作の一連の流れについて解説されています。(英語)
-
BmsONEの使い方についての解説があります。(英語)
7. 履歴
- GitHubにソースコードを公開した。
- Windowsでも64bit版の提供を開始した。
- 特にMac版で譜面スクロール時に頻繁にクラッシュするバグを修正した。
- ファイル名のパストラバーサル検出に関する挙動を修正した。
- 書込モードで右クリックによりノートを削除するとクラッシュするバグ問題を修正した。
- 譜面スクロール時のパフォーマンスを改善した。
- 波形表示が更新されない問題を改善した。
- BPMイベントなどを挿入しても「選択オブジェクト」ウィンドウが表示されない場合があるのを修正した。
- BPMイベントの挿入をアンドゥするとクラッシュする場合があるバグを修正した。
- グリッド設定機能を実装した。
- 24bit・32bitのWAVファイルに対応した。
- BMSファイルのインポート機能を実装した。
- キーボードモード(24keyなど)に対応した。
2017年02月12日 beta 0.1.5
(Windows
Mac)
- bmson 1.0.0の仕様のうち、「情報」ウィンドウで未対応だったタイトル画像(title_image)とプレビュー音(preview_music)を編集できるようにした。
- UIフォントを変更できるようにした。また、Windows版のデフォルトフォントを変更した。
- 音声チャンネルのプレビューでBPM変化がある場合に落ちるバグを修正した。
- 一度に複数のBPMイベントを変更すると落ちるバグを修正した。
- 音声ノートとBPMイベントごとの拡張情報を編集できるようにした。
- シーケンスビューの音声チャンネル(BGM)レーンの表示モードとして、「コンパクト」と「シンプル」を選べるようにした。
- チャンネル検索機能を強化し、活性状態への絞り込み、ヒットしたチャンネルだけ表示できるようにした。
- 曲のWAV書き出し機能を実装した。
2016年12月25日 beta 0.1.4
(Windows
Mac)
- パスにスペースを含む外部ビューワを起動できない問題を修正した。
- 選択ノーツを「BGMレーンに移動」「演奏レーンに移動」に関するバグを修正した。
- 編集モードでのマウスカーソルの当たり判定に対する「グリッドにスナップ」の影響を変更した。
- シーケンスビューの表示を微修正した。
- ノーツが重なるような移動を禁止するのではなく警告を表示するようにした。
- ノーツの重なりがレイヤーノートと見なせる場合はレイヤーノートとして編集できるようにした。
- 数字キーで選択ノーツを特定のレーンに移動できるようにした。
- BMSONファイルが小さくなるような「Compact」保存形式を選択できるようにした。
- 高DPIディスプレイ用の仮対応を行った。
2016年12月11日 beta 0.1.3
(Windows
Mac)
- ミニマップ上でプレビューできるようにした。
- マスターレーン/ミニマップの波形表示が左右逆なのを修正した。
- 音声チャンネル情報ウィンドウの波形表示を変更した。
- ドキュメントを開く際のメモリリークを修正した。
- 選択ノーツをダブルクリックでキー/BGM切り替えできるようにした。
- 書込モードでノート配置の際ドラッグでLNを入力できるようにした。
- Generic 6,7 Keys およびプレーン表示モードを追加した。
- 外部ビューワの呼び出し機能を実装した。
- ノーツ編集時にマスターキャッシュが正しく更新されない場合があるバグを修正した。
- UIの軽微なバグ修正と改善。
2016年09月06日 beta 0.1.2
(Windows
Mac)
- Circular Rhythm 用の表示モードを追加した。
- 非アクティブなチャンネルを暗くするかどうかの設定を追加した。
- チャンネルプレビュー時の自動スクロール機能の実装、表示性能を改善した。
- ノートプレビューの最大の長さを設定できるようにした。
- 音声チャンネルの検索機能を実装した。
- 情報の「モード」の欄を主な候補から選べるようにし、表示モードも自動で切り替えるようにした。
2015年11月20日 beta 0.1.1
(Windows
Mac)
- 新規作成によって作ったドキュメントにバージョン情報が含まれないバグを修正した。
- 音声ノーツの編集時マスターキャッシュが不必要に更新される問題を修正した。
2015年11月14日 beta 0.1.0
(Windows
Mac)
- スクラッチ位置の変更など、表示モードの機能を改善した。
- マスターキャッシュ、マスターレーン、ミニマップを実装した。
- Bmson v1.0 形式で導入されたデータの編集に対応した。
2015年11月04日 alpha 0.0.6
(Windows
Mac)
- Macで環境によっては ogg ファイルの読み込み時にクラッシュする問題を修正した。
- Macで譜面スクロール時などに頻繁にクラッシュする問題を改善した。
- 音声チャンネルに配置された音声のプレビュー機能を実装した。
- Bmson v1.0 形式の入出力に関する暫定的な対応を行った。
- 7鍵盤以外の表示モードへの暫定的な対応を行った。
- 言語などを変更できる設定画面を追加した。
- ノーツの移動時等にショートカットキーが動作しないようにした。
2015年10月17日 alpha 0.0.5
(Windows
Mac)
- 「元に戻す」「やり直し」を実装した。
- 編集モードを新たに追加し、ノーツの移動やLNの編集が可能になった。
- 選択したオブジェクトをまとめて削除したり、キー音レーン・BGMレーン間を移動できるようになった。
- 情報・チャンネルビューのUIを少々変更した。
- いくつかの軽微なバグ修正とパフォーマンス改善を行った。
2015年09月27日 alpha 0.0.4
(Windows
Mac)
- BGMレーンのノートをプレビューした時におかしくなるバグを修正した。
- 拡張情報や音声ファイル名にもユニコード文字が使えるようになった。
- EXEファイルへのD&Dでファイルを開けるようになった。(Windowsのみ)
2015年09月26日 alpha 0.0.3
(Windows
Mac)
- Qt をバージョン 5.4.1 から 5.5.0 にアップグレードした。
- ステータスバーなどのUI要素を実装した。
- Macでクラッシュする主な要因を修正した。
- 小節線とBPMイベントが編集可能になった。
- BGAなどの未対応のデータが消えてしまわないようにした。
- 波形表示のバグを大方修正した。
- 設定ファイルにウィンドウの位置などの情報を記録するようにした。
2015年09月17日 alpha 0.0.2
(Windows
Mac)
2015年09月12日 alpha 0.0.1