2ntブログ

VMDSpectrum対応ステージの実験

ふと思付いたミニ動画を作成しようと、ダンスステージを探していました。


探していたのは VMDSpectrum で音に合わせて派手に明滅するステージ。
そうして見つけたのが、くうわんこ様の「ダンスステージ」です。

バックスクリーンがキラキラと輝く素敵なステージです。
blog20180428f.jpg

まさに探していた通りのステージです。カッコイイ。

さて早速、VMDSpectrumで音データからVMDデータを作成し、読み込ませてみると・・・・
blog20180428a.jpg


ガーン。めったに見ない制限にかかってしまいました。
このステージのバックスクリーンは、シンメトリ版で173のバンド数から成るので、20000÷173=156フレームしか光らせることができない計算になります。
2フレーム置きに光らせたとしても、231フレームしか動画が作成できないことに。
本当なんでしょうか。
VMDSpectrumでステージを光らせる動画はソコソコ見かけるように思いますので、私が勘違いしている可能性が高いです。
数百フレームごとに動画を分割して出力しているとは、ちょっと信じられないので何かテクニックがあるのかもしれません。

ともかく、この制限にひっかかったことによって思いついた実験です。

このステージはバックのライトの1つ1つが材質に分かれていて、それぞれに設定された材質モーフを動かすことで個別に発光させる仕組みになっています。
blog20180428b.jpg
こんなかんじ。

これを材質モーフではなく、screen.bmp による背景AVIで発光させることはできないか?というのが実験主旨です。
これならモーションを読み込ませる必要が無いので、登録ポイント数の限界の問題は解消されます。

まず第一段階。
バックスクリーンにある無数のライトをUV展開します。
本当はキッチリと展開する必要もないのですが、将来を考えてそれなりにUV展開することにします。

手作業でやっていると大変なので、スクリプトを書いて展開します。

blog20180428c.jpg

こんな感じに、敷き詰めて展開します。

そして第二段階。
VMDSpectrumで出力したVMDファイルに基づいて、背景AVIファイルを作成します。
第一段階でUV展開された各ライトと対応するUV位置に、モーションの値に基づいた輝度を出力していきます。
blog20180428d.gif
こんな感じのAVIになります。

そしてバックスクリーンをscreen.bmpにUV展開したステージモデルと、背景AVIを読み込んで再生!


blog20180428e.gif

あるぇぇ・・・・光ってくれない。

MMDではPMXモデルにscreen.bmpは使えませんので、CVN68Nimitz様のDummyScreenCopyを使用しています。
一応、目論見通り、背景AVIの各部分が対応するバックスクリーンのライトに当たっている・・・ような気がしますが、ライトは薄暗く光るだけです。

AutoLuminousの仕組みはよくわかっていないのですが、うまくすれば光ってくれるかなと思っていたのですが。

ちょっと調べてみないとわからないですが、なんだかうまくいかなさそう。
他にも課題はあるので、実験は失敗かも?

コメントの投稿

非公開コメント

登録ポイントの最大数について

もしかするとOSやMMD本体などで『32bit』などを利用しているということはございませんでしょうか?

手元に該当ステージが無いので確認は持てませんが、確かめてみると幸せになれるかもしれません。

Re: 登録ポイントの最大数について

コメントありがとうございます。
> もしかするとOSやMMD本体などで『32bit』などを利用しているということはございませんでしょうか?
私は普段は64bitしかダウンロードして使っていないので、どうやらMMD自体の仕様のようですね。
検索してもあまりヒットしないので引っかかるひとはほとんどいないのでしょうけれど^^;
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
Twitter