--

--

コメント

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
管理者にだけ表示を許可する

この記事のトラックバックURL

http://waxwanemusic.blog.fc2.com/tb.php/20-ee3f9d04

12

19

コメント

DrumsMotion LITE 開発記(6)

基本仕様

ライブラリ用モーション作成に関する基本仕様をまとめておきます。

◆打点→(振り上げ)→(振り下ろし)→打点

「打点をインパクトした瞬間的直後を始点とし、腕を振り上げる。
そこから腕を振り下ろし、次の打点をインパクトする。」

例)ハイハットのインパクト直後からタムタムを打つまで
(ex)Impact to Impact 1 (ex)Impact to Impact 2 (ex)Impact to Impact 3

DrumsMotion LITEを構成する最小要素。
この動きの流れをワン・モーションとして複数作成し、譜面に合わせて読み込み、組み合わせて使用するのが基本となる。

◆BPM=60でのデータに統一

MikuMikuDance(以下MMD)には指定範囲のキーフレーム間隔を拡大・縮小することでモーション速度を調節できる機能が備わっている。この機能を利用してドラム演奏させる曲とのタイミング同期をおこなう。

片方をもう一方に合わせて拡大・縮小をするためには、両者間での共通の基準が必要である。

もっともわかりやすく扱いやすい基準は「1秒間」という単位。

  • MMDでの1秒間とは30フレーム間である。
  • 音楽での「1秒間に1拍のテンポ」とはBPM(Tempo)=60に相当する。

つまり、ある曲の譜面をBPM=60で演奏するモーションデータを作成し、
完成データの拡大率 = {実際の曲のテンポ(BPM)÷60}
で曲と演奏を完全にシンクロさせることができる。よってライブラリ用モーションはBPM=60で作成する。

ちなみに、拡大するフレーム区間を分割することでテンポチェンジにも対応できる。

ただし、この方法論での注意点や不得意な部分もある。

  • 対象とする曲の正確なテンポがわかっている必要がある。
  • クリックなしでの生演奏など、テンポが多少でも不安定な演奏では、細かく調整する必要がある。
  • ritardando(次第にゆっくり)やaccelerando(次第に速く)などの対応が難しい

◆テンポ帯域別にライブラリを用意する

「拡大・縮小することであらゆるテンポに対応できる」とはいっても、実際には、極端に速いor遅いテンポでは単純な拡大では動きに違和感が生じてくる可能性もある。

最終的にはSlow/Middle/Fastの3種類のライブラリを用意する必要があるが、まずもっとも汎用性の高いテンポ帯域Middleを作成し、そのコピーを別帯域用に再調整する手法を目指す。

◆BPM=120を標準とし、BPM=60で登録する

汎用性の高さの観点から、BPM=120を標準テンポ帯域として作成する(MMDで15フレーム間)。

”ライブラリデータ作成の過程で16分音符や6連符などの細かい動きを考えると1拍15フレームでは心許ない”、”テンポ帯域ごとでの拡大率計算に統一性をもたせる”、といった観点から、モーションデータ保存時においてはやはりBPM=60に変換して登録する。

関連記事

管理者にだけ表示を許可する

この記事のトラックバックURL

http://waxwanemusic.blog.fc2.com/tb.php/20-ee3f9d04

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。