任务单 #22412

ピッチベンドの変化をピアノロールに反映する

开放日期: 2010-07-09 01:41 最后更新: 2010-07-11 22:11

报告人:
属主:
状态:
关闭
优先:
5 - Medium
严重性:
5 - Medium
处理结果:
文件:

Details

発音中のノートについて、ピッチベンドの変化をピアノロールバーに反映する。 ピッチベンドの変化によってピアノロールバーが上下に動く。

任务单历史 (3/5 Histories)

2010-07-09 01:41 Updated by: yknk
  • New Ticket "ピッチベンドの変化をピアノロールに反映する" created
2010-07-11 09:01 Updated by: None
2010-07-11 18:51 Updated by: yknk
2010-07-11 22:11 Updated by: yknk
评论

対策

SMSequencer

音源に送信するMIDIイベントから、ピッチベンド関連のデータを抽出して、 ピッチベンドの変化をアプリ本体に通知する。

SMMsgParser, SMMsgTransmitter

ピッチベンド変化通知を送受信するI/Fを追加する。

MTNotePitchBend

ピッチベンド情報クラスを新規作成する。 ポート/チャンネル単位のピッチベンド設定状態を保持する。 このクラスのインスタンスをMTScenePianoRoll3Dに保持して、 MTNoteBox, MTNoteRipple からピッチベンド設定状態を参照させる。

MTNoteBox

ピッチベンド設定状態をMTNotePitchBendから取得して、発音中ノートの描画位置に反映する。 発音中ノートに対応する既存ノートを消去する。 既存ノートのインデックスバッファについて、該当ノートのインデックスを書き換え、 すべての頂点が同一点を指すようにして非表示を実現する。 発音終了時にインデックスバッファを元に戻す。既存ノートの頂点バッファは変更しない。

MTNoteDesign

ピッチベンド設定状態に応じたノートの描画位置を算出する。

2010-07-11 22:11 Updated by: yknk
  • 状态 Update from 开启 to 关闭
  • Ticket Close date is changed to 2010-07-11 22:11

Attachment File List

No attachments

编辑

Please login to add comment to this ticket » 登录名