2018年5月4日金曜日

Blender上でMIDIファイルを読み込み3Dモデルの鍵盤を動かすpythonスクリプトに挑戦したこと



昔取り組んだことについての忘備録

作成日

2016/8/7

目的

  • MIDIファイルの仕様の理解
  • BlenderとPythonの学習

内容

MIDIファイルのバイナリを読み込んで解析し、ノートオン、ノートオフ情報に従って、対応する音階の鍵盤オブジェクトのトランスフォームにキーを打ち込みます。

感想

4/4拍子でテンポ120、分解能が480だった場合、1秒が960分割されます。鍵盤を連打する場合、鍵盤のオンオフが960分の1秒で起こる可能性があり、24fpsや30fpsでは同フレームで鍵盤のオンとオフが上書きされ、鍵盤が押しっぱなしになる、もしくは音が鳴ってるのに鍵盤が動かないという状況がよく起こりました。
キーを打つ前に鍵盤の状況を判定し、必要であれば直前のフレームに戻ってキーを打つ処理が必要になります。




Blender上でMIDIファイルを読み込み3Dモデルの鍵盤を動かすpythonスクリプトに挑戦したこと

昔取り組んだことについての忘備録 作成日 2016/8/7 目的 MIDIファイルの仕様の理解 BlenderとPythonの学習 内容 MIDIファイルのバイナリを読み込んで解析し、ノートオン、ノートオフ情報に従って、対応する音階の...