15周年合作動画の話

MMD15周年だそうで、ソースヤキソバさんが企画動画のアイドルアマスターのパートを作らせていただきました。

 

www.nicovideo.jp

 

www.nicovideo.jp

 

どこかで見たことあるようなアイマスアニメOPっぽい動画になってるつもりです。

特にトレースした元ネタとかがあるわけでもないんですけども。

 

 

春香さんが転んで(定番)、持ってたカバンからののわさんとリボンが出てきて、

アイマスの各ジャンルのメンバーが乗ったティーカップが下りてくる・・・

・・・そういうイメージ動画。



(画像は動画の別アングルです)

 

最初の構想では、765AS、876、961、315、346、765ミリ、283の各プロダクションで7つのティーカップを配置して3人ずつ乗せればいいかなと思ってたのですが・・・

 

さすがに尺が短すぎて1つずつが映る時間が短すぎ、目で追い切れないことがすぐに判明したので、ティーカップを4つに減らして基本的に2つのプロダクションで相乗りさせることにしました。

リボンが7本あるのは元のアイディアの名残ですね。ティーカップの柄も本当は7つ用意してあった・・・というか相乗りカップの裏側にももう1つのプロダクションのマークが付いてるんですが、ティーカップを回すと目で追い切れないのでほぼ割愛されてます。。。

 

この手の動画で一番問題になるのはメンバーの人選でして、

MMDモデル事情も絡んできて正解というのはあってないようなものですね。

 

765ASからは美希と千早、春香さんと合わせて無難に信号機トリオですね。

876からは愛ちゃんと絵理・・・涼ちんはメンズ枠での選出もあったのですが・・・

961からは冬馬と北斗、315からはてんてると翼、ということで涼ちんはここからも弾き出されてしまったのでした。まあ翔太も桜庭も乗れてないからちかたないね。

もともとティーカップは3人乗りのところを4人に拡大、さらに詰め込んで5人となるとスペース的にも画面的に無理。メンズはラフに乗りこなしてほしかったこともあって、カップの外で座る役は北斗に決定。こういうところのイメージがしっくりくるかどうかは大事ですね。

 

続くデレ+ミリのカップ。ニュージェネ(しぶりん・卯月・未央)も1人は乗れないことが決定していたので、それなら2人外して久々にひいらぎ式蘭子をとなりました。ひいらぎPがBlender講座をブロマガに載せてたこともあって反響が大きかったモデルですよね。

ミリの方もセンターはS.Aikawaさんの未来モデルを乗せたらハマったけど、信号機トリオは無理。もう一人は試行錯誤した結果、星梨花を選びました。理由はカップの縁に手を乗せて顔を出すポーズが似合ってたから、です。

 

モデルごとにポーズの特徴を付けたいけど、画面があまりうるさくなるのも困るわけで、邪魔にならないポーズをしてもらうキャラがほしかったんですね。765ASだったら雪歩枠だったでしょうけど・・・

 

最後のシャニマス枠は螺旋王さんからイルミネーションスターズのモデルを借り出してきました。詰め込めばもう一人乗せることは可能だけど、4人だと難しいですね

シャニは最新枠ということで今回カップを独占的に使ったけれど、動画作業中にアイマス新プロジェクトが発表、新たな信号機(赤・青・黄)ビジュアルもお目見えしたりして、時の移り変わりの早さを感じずにはいられません。

 

人選が終わったところで、それぞれのカップを効果的に見せるためのタメツメ作業。

かいつまんで説明すると、カップが等速でリボンの上を滑ってくると速すぎて目で追うことができなくなってしまうんですね。だからカメラの近くではなるべく遅く、カメラに近づく時と去る時は速くという形で、整理してやる必要がありました。

 

結果、リミテッドアニメの考え方にどうしても近くなってしまいますね。実際のところ再生時にコマ落ちするくらいでちょうどよかったかも。カメラ回しは30fps、モデルは低fpsみたいな工夫をするにはちょっと背景とモデルが絡み合いすぎて無理でした。。

 

(上から見た図、タイミングを間違えるとたぶん大事故)

 

カップが滑るコースも最初はもう少し散らしていたのですが、それだと目が追いつかないので中央を通るようになって、中央を通ると今度は中央のカバンにぶつかりはじめて、カバンが上に追い出されて(よく見ると相当ニアミス)、と、3Dで配置するのが便利なのか不便なのかよくわからないことが多いです。。。

 

そういえばクレジットには書き忘れてましたが、今回使ったリボンは自作オブジェクトです。本当にただの板ポリにボーンを仕込んだだけの変哲のないもので、ボーンを変形させることで形を作っていますが、付与連動ボーンを連ねることで形状を付けやすくしてあります。

リボンが伸びてくるところはUVモーフを使っていて、あらかじめ形を付けてあるリボンを少しずつ出現させることによってリボンが伸びるように見えるわけですね。

 

ちなみに涼ちんが入ってたらどうなったかというと・・・

 

そういえば提出した後に前パートと繋ぐからという理由で春香さんが走るところの尺を伸ばしたのですが、そこに何か詰め込むことはできたかも・・・?

(食パンをくわえた春香さん)

【MMD/MME】モーションブラーについての小技

そぼろさんの配布しているMotionBlurについて。

 

MotionBlurにはMotionBlur2とMotionBlur3がありますが、

3はどちらかというと静画用、動画のブラーとしては大差ない、と思います。

そして、この記事は2でも3でも共通の話になります。

 

1.モデルの頂点数オーバー対応

YYB式NTミクさんとMotionBlurをMMDに読み込むと表示がおかしくなります。

 

 

動かしてないのに頭のあたりに変なブラーがかかってしまってます。

その理由は以下の通りreadmeに書いてあります。

 

>頂点数26万を超えるPMXファイルについては非対応です。

 

YYB式NTは頂点数が30万近くあって多すぎるんですね。

 

 

readmeには非対応とありますがfxファイルの中身をいじることで対応できます。

MotionBlurのフォルダ内にある「VelocityMap.fx」というファイルをメモ帳で開くと以下のような記述があります。

 

//26万頂点まで対応
#define VPBUF_WIDTH  512
#define VPBUF_HEIGHT 512

 

この数字を増やしてやることで26万頂点を超えることが可能になります。

たとえばこう。

 

//26万頂点まで対応
#define VPBUF_WIDTH  1024
#define VPBUF_HEIGHT 1024

 

これでだいたい100万頂点くらいまで対応します。ただ、このまま上書き保存すると頂点数が少ないモデルにもメモリが確保されてメモリをバカ食いします。

とりあえず書き換えたファイルを「VelocityMap1024.fx」とでも別名保存してしておきます(名前はなんでも可)。

 

そして、MMEのエフェクト割り当てを開いてのMotionBlurのRTタブ(VelocityRT)で該当のモデルに「VelocityMap1024.fx」を掛けてやることで頂点数の多いモデルにだけこのファイルを適用してメモリを確保することができるようになります。

 

 

注意しなければならないのは、RTタブで別名の「VelocityMap1024.fx」を掛ける時に、必ずモデル名がある行に適用することです。サブセット展開している時に間違って材質側に適用してしまうと、材質ごとにメモリを確保するようになるため適用された材質数分のメモリをバカ食いするようになります。材質数50に選択して適用すると50倍の重さになります。。

 

もともとモーションブラーはPCによって動かないこともある重いエフェクトです。

メモリをバカ食いしないように配布者側で親切にスペックに制限を掛けているわけで、その制限数値をいじるのは自己責任だということは心得てください。

 

 

2.モーションブラーのアルファ抜き出力

ここからは頂点数の多いモデルに関係なく全モデルで起きる話です。

背景モデルなしでMotionBlurの結果を編集用のアルファ抜き動画を出力しようとするとうまくいきません。

 

モデルはなんとなくボケるのですが、モーションブラーに本来必要な残像が背景の透明部分に食われてしまう感じになります。またモーションキットなどで背景Aviなどを読み込んだ場合も同様の現象が起きます(正確には背景の深度の問題です)。これはreadmeの説明にもあります。

 

>モデル単体よりも、無地でもなんらかの背景モデルがあったほうが望ましいです。
>白背景と黒背景を同梱しています。

 

 

そこでクロマキー合成するために色付きの背景を読み込めばと思いますが、クロマキー合成した場合にも残像部分が背景色と一緒に食われやすいという問題が起きます(閾値の判定次第ではあります)。

 

 

アルファ抜きしたい場合は、まず同梱の白背景.xか黒背景.xのどちらかをMMDに読み込んだ上でMMEのMainタブで白黒背景.xのチェックを外してください。これで背景が透明の状態でも残像が綺麗に残ったアルファ抜きされた動画を出力することができます。

 

 

背景Avi動画の上に残像を残したい場合も同じで、Mainタブの白黒背景.xのチェックを外しておけば大丈夫です。

 

 

この時、MotionBlurのRTタブ内での白黒背景.xのチェックはそのままにしておいてください。またアクセサリ欄のの方で白黒背景.xの表示をオフにしてしまうとやはりブラーが掛からなくなるので注意してください。

 

ちなみにアルファ抜き出力する場合に白背景.xと黒背景.xの色は出力結果に反映されないので、どちらでも同じ出力結果になります。あとで合成する背景の色に近づけたい場合は「MotionBlur.fx」をメモ帳で開いて以下の記述をいじってください。

 

//背景色
float4 BackColor
<
   string UIName = "BackColor";
   string UIWidget = "Color";
   bool UIVisible =  true;
> = float4( 1, 1, 1, 0 );

 

float4のカッコの中身が残像を背景の色に合成する際のRGBA(赤、緑、青、アルファ)の色数値になります。背景の色やモデルの色に近づけておいた方が綺麗に合成できます。

 

 

 

記事は以上です。

モーションブラーとうまく付き合えるといいですね。

 

全打ちとMMMのモーションレイヤーについて

モーション配布動画を投稿しました。以前、short版だったのをfull版にしたものです。

 

www.nicovideo.jp

 

ダンス全体についての感想はshort版を上げた時に書いているので、今回はモーションの全打ち箇所についてです。

 

今回のモーションの全打ち箇所はMMMのモーションレイヤーを使って作ってます。MMMのモーションレイヤーはモデル改造なしで多段モーションを作れる機能です。そして、作ったモーションはレイヤーを多段統合して全打ちモーションとしてvmd出力できます。

 

ただし、レイヤー統合するとレイヤーのーあるボーンは全フレームで全打ちになります。要所だけ全打ちにしたい場合は、出力したvmdからコピペして切り出さないとダメ。すべて全打ちになっても問題はないような気もしますけど。

 

マーシャルマキシマイザーではたとえば上半身を大きく回すところはモーションレイヤーを使った多段モーションから全打ち出力しています。全打ちになる前のモーションレイヤーはこんな感じです。

 

レイヤー統合して全打ちするとこうなります。

 

1フレームずつ根性打ちするよりはレイヤーを使った方がタイミングの微調整がやりやすいです。デメリットは使わない時も表示枠にレイヤーが表示されていてTLが少し見にくくなることでしょうか。

 

この箇所のような複数の回転軸が混ざる動きは多段したり全打ちしないなら、立体的な動きは気にせずバッサリと切り捨ててしまった方が賢いかもしれません。

 

ちなみにMMMに限定するならレイヤー化したモーションはMMM独自形式のmvdという形式で全打ちにせず保存することができます。MMM独自のmvd形式の配布はあまり見かけませんが、最近だとツイッターでよく見かけるモーション、松山じろべえさんのSparkleでmvdファイルが同梱されています。

 

www.nicovideo.jp

 

MMMのモーションレイヤーが気になる方は一度SparkleのmvdファイルをMMMに読み込んで見るといいと思います。

 

私の方ではmvdファイルは配布してません。ピンポイントでしか使ってないmvdファイルを配布用にもう一度復元するのがめんどくさいのと、モーションレイヤー以外の全打ち部分が混ざってるのがめんどくさいからです。

 

たとえばここで肩を回すモーションなんですが・・・

 

肩を回す動きはモーションレイヤーを使って2つの回転を組み合わせて作っています。しかしそのままだと腰に当てている手首の位置が安定しません。

そこで腕切りIKを入れたモデルにモーションを流し込み、モデルの手首位置を固定したポーズをIKモデルから取得して全打ちモーション化してます。(手首は完全固定も不自然なので多少動かして位置調整しています)

 

というわけでmvdファイルだけではモーションが完結してないわけです。

 

もしこのあたりの調整をユーザー側でしたいなら両用腕IKなどの腕切IKをモデルに入れて直接調整するのがベストです。配布でも考えなければわざわざIKから全打ちファイルを作る必要はありません。

 

以上、全打ちは別に全部根性打ちしているわけではないよという話でした、手調整してることもありますけどね。最近ならNexGimaのモーション焼き込み機能を駆使すれば高精度な全打ちモーションを作れる可能性が広がると思います。

 

 

 

 

 

 

ボカコレ2022秋参加、マーシャルマキシマイザーについて

ボカコレ2022秋というイベントに動画を投稿しました。

www.nicovideo.jp


MMD&3DCGランキング部門で3位ということで入賞?のご紹介いただきました!

ご視聴&応援していただいた皆様、ありがとうございます~

vocaloid-collection.jp

 

ボカコレはボカロ曲の新曲投稿がメインのイベントです。

曲に付随して、踊ってみた、歌ってみた、演奏してみた、Remix、MMD&3DCG、イラストなどの二次創作的な投稿を受け付けています。

 

ちょうどトレースを始めた頃にイベントの時期を知って、1ヶ月あれば短いトレースはできるかなと思って参加しました。

ただ1つ誤算があって、10月8日0:00~10日17:00の投稿期間の後にMMD杯のような集計期間があると勘違いしてました・・・投稿も集計も3日間だったんですね。

翌日昼の投稿になってしまってスタートダッシュし損ねたわけです。

 

 

最終的に3位に滑り込みましたが、この記事を書いている時点では再生数1位になってますし、投稿時間を初日の0:00にできていたら順位が上がった可能性もあります。まあ最終日の締め切り直前にイベントを知って投稿したmokaさんが最初から参加していたら追いつけなかったでしょうし、順位は水物。

 

[2022/10/15/17:00の再生状況、そろそろ抜かれそう。ボカコレの順位はコメント・いいね・マイリスなどを合わせているそうなのでそっちではたぶん抜かれてるし、1位2位を上回ってはいなさそう。集計終了時点では再生数も下でした。]

 

この手のランキングは動画内容以前に曲の知名度や配布で有利不利が出ているので、細かい差は真面目に考えるだけ無駄な気がします。それは普段の動画投稿でも同じことですが、旧MMD杯にしても次第にランキング形式が悪目立ちしてしまっていた感があるし、心に余裕がないと楽しめないかもしれませんね。

 

順位の話はいろいろとセンシティブですが、とりあえずこの記事を読んで今後ボカコレに参加する気がある方は投稿時間は初日の開始に合わせるように心がけましょう。

 

~~~~~~~~~

 

ここからは動画の話。

www.nicovideo.jp

 

トレース元はこちらの平来ミナさんの踊ってみた動画。身体を揺らすウェーブやアイソレーションが素晴らしくて、そういうのをやってみたくてトレースをしてたりします。トレースは動画で使った可不モデルではなく、YYB式のニュータイプモデルを使っています。

 

www.nicovideo.jp

 

新しいモデルということもありますが、このモデルすごく細いんですよね。今回のモーションのテーマであるウェーブが綺麗に見えるかなということでやってるわけですが・・・

モデルと並んでも細さに違和感がない気がするのはどうなってるの!

と思わなくもないのでした。

 

モーションはもう少し後まで付けてあって、そのうちロングバージョンとして完成させるつもりなのでお気長にお待ちください。ウェーブやアイソレーションの見せ場が後にあったりするので、トレースの速度はその辺のやる気とこだわり次第で結構変わります。

 

~~~~~~~~~~~~~~~~~

 

動画で使った可不モデルはこちら。

3d.nicovideo.jp

 

可不のMMDモデルがあるのを初めて知った~というような感想は特に嬉しく感じたりします。動画と言ってもPVなわけで、曲やモデルやダンスを知ってもらうことが一番大きな目的だったりするので。

 

動画では少しクールな表情をさせてますが、子供感あるかわいいモデルですよね。ダンスのイメージとマッチングするかなと少し心配でしたが、流し込んだままでも綺麗に動きました。後ろに回したフードに腕が埋もれるのを少し直した程度でしょうか。

 

実は今回の動画ではMMDらしくカメラを大きく動かそうと思って、当人比では激しめのカメラが付いているんですけど、「カメラは落ち着いてるけど背景が動くから酔う」みたいなコメが付いてたりして・・・そうかまだ落ち着いてるか。

 

[わりと激しい動き、56秒あたり]

 

まあ動いてもある程度見やすいようにはしてますけどね。

ちなみに動いているという背景はこちら、ゆづきさんの音楽ゲーム風ステージです。

 

 

このステージにビームマンPが配布しているDropShadowというエフェクトを掛けることで違う色の差分が複製されています。このステージ単体でも動きますが、カメラとの位置関係でさらに複雑な動きになっています。

 

[DropShadowによって複製されたステージとモデル。横に伸びているのはサイバー生成途中に見えるけど、エフェクトが画面外を複製できない仕様の副産物]

 

演出ももっといろいろしたくはあったけど、ステージとカメラが激しく動くので(当人比)、短い動画としてはこんなところでしょうか。牛柄ついでに牛にも踊らせたかったんですけどね・・・

 

ニコニコ動画ばかり見てると丑🐄になっちゃう!?]

 

というわけで、配布もしているので興味のある方は見てやってください。今回のボカコレではマーシャル・マキシマイザーのリミックス動画も多く配布されているので、組み合わせの工夫次第でいろんな動画ができるんじゃないでしょうか。

 

HAToon2のトゥーンフラットについて

PAToonはHAToon2のトゥーンフラットの設定を引き継いでいます。

 

HAToon2のトゥーンフラットは以下の4枚のテクスチャが使われていますが、

これは一体何をしているのか、という話をまとめておきます。

まず一番基本的な影の色を決めているのがDiffuseMul.pngというテクスチャです。

左側が影の色で、肌色の血色をよくするために赤みのある影を付けています。

 

このテクスチャを材質に乗算しているのですが、

MMDデフォのトゥーンと違って右側が白ではなく灰色になっていますね。

このまま乗算すると影になってない部分も暗くなってしまいます。

 

それを調整するのがDiffuseAdd.pngというテクスチャです。

右側がほぼ黒、左側が黒に近い灰色になっていて、これが加算されます。

DiffuseMulで乗算して暗くなった分がこの加算で元より少し明るくなります。

乗算と加算で計算方法が違うのでイコール完全相殺ではありません。

 

なぜわざわざ乗算で暗くしてから加算で明るくしているのかというと、

全体にメリハリを付けることでトゥーン感をよりくっきりさせてるんですね。

これによってトゥーンフラットでは字の色が元よりも少し明るくなります。

 

で、次はDiffuseHue.png、この辺から少しややこしくなります。

虹の一部がアルファで抜けたみたいなテクスチャです。

他のテクスチャと違って正方形ではありませんが、

内部処理的には縦に圧縮されて正方形と同じ扱いになります。

 

このテクスチャはモデルの材質の色相を補正するためのものです。

トゥーン幅になっているので材質の影部分しか色相の補正はされません。

 

通常の色相と補正テクスチャを比較するとこのようになります。

赤の幅と青の幅が少し広くなっているのが分かるでしょうか。

左の色が右の色に置き換えられます。欠けている部分は補正されません。

 

 

この結果、水色の材質の影が青っぽく、黄色の材質の影がオレンジになります。

実はHAToon2は初音ミクが綺麗に見えるように設定されているのですが、

特に水色の髪の毛の影色がこれで綺麗に青みを帯びて見えるのです。

黄色の材質の方はリンレンの髪の毛の影色に影響しますね。

 

DiffuseMulBySat.pngは水色が左上の方に少し乗っているテクスチャです。

これは材質の影になる部分の色相の彩度が低い部分にこの色を乗算しています。

 

イメージしやすいように並べるとこんな感じです。

彩度が低くなるとグレースケール(灰色)に見えるようになりますが、

グレースケールに近くなった材質の影に青みを加えることになります。

 

なんで水色なのかというと、

もともと影の色に赤みのある色を乗算しているのでそれが補正されるんですね。

2つのテクスチャを単純に重ねて乗算すると下の感じになります。

 

 

まだ少し青み成分が残ってますね。

初音ミクの場合、服が灰色に近いのですが、

その影が水色っぽくなることでアニメっぽい色合いになります。

 


HAToon2内の設定はジェネレーターを使わなくても

「#define~」の前に「//」を入れることでオンオフの様子を見ることができます。

 

 

 

トゥーンフラットにはあと2つほどテクスチャが定義されてますが、

初期設定では有効になっていません。

内容はスフィアとスペキュラのトゥーン化です。

 

以上、HAToon2のトゥーンフラットの説明でした。

ジェネレーターの説明記事にしようかとも思ったのですが、

それはそれでさらに長くなるのでここまで。

 

 

 

 

 

 

 

MMDマクロでの条件判定の方法

MMDマクロにで条件判定して命令を実行する話です。

 

すでに配布しているリップファイルの中に組み込まれているのですが、

その説明になります。

pip-mmd.hatenablog.com

 

例としては以下の箇所。

 

;判定計算用の定数
var(man, 10000)

;歌い出しが0.5以上の場合0.5にする
;リップモーフの変形量を取得
get(face_mouth_input, LipStart)

;変形量が0.5以上か判定する
calc(LipStart, -, 0.5, LipJudge)
calc(man, +, LipJudge, LipJudge)
calc(LipJudge,/,man)

;判定値を切り捨てる
calc(LipJudge, floor)

;判定値が1の場合、以下のファイルを実行する(0の場合は無視される)
loop(\ループ用\モーフ量調整.txt, LipJudge)

 

これはモーフから取得した値が0.5以上の場合は0.5に収めるという処理です。

0~0.5の入力値はそのままで0.5~1.0の入力値は0.5に丸められます。

 

MMDマクロではloopという命令で

他のテキストのマクロの回数を指定して実行できます。

実行回数が0回なら無視、1回以上なら実行されるのでそれを判定に使うわけ。

 

取得したモーフ入力値と判定値0.5の差分を取り、

それを定数10000に足し引きした後に1/10000して、

小数点以下を切り捨てることで1か0かの判定をしてるわけです。

 

仕組みは分かってしまえば簡単ですが、

命令や整数と小数の変換に多少慣れが必要なようです。

 

最初に判定計算用の定数10000をmanという変数に代入してますが、

後で計算式のcalcに使うための処理になります。

calc(man, +, LipJudge, LipJudge)

この箇所でcalcの冒頭が変数(man)ではなく数値(10000)は使えない様子。

 

上の場合、足し算なので逆にすれば実は変数を使わなくても大丈夫なんですが、

0.5以上~の判定ではなく、0.5以下~の判定の場合はこの順にしないとダメ。

というわけで使い回しが利くようにこの順になっています。

 

ちなみに定数に10000を使っていますが、

これはMMDで数値を使う場合に10000以上の数値を使うことがあまりないからです。

たぶんもう1~2桁は増やせると思うんですが精確な確認はしてません。

上の処理はモーフなのでこんなに桁数いらないですね。

ボーンで使うかどうかしょうか。

 

配布しているマクロではさらにもう1つ、

キーフレームの間隔を見てフレームをずらす判定式が組み込まれています。

 

というわけで上のような処理を行えば

入力数値を取得して判定値を元に追加処理を行うかどうかができます。

モデルに特定の名前のボーンやモーフがあるかみたいな判定はできません。

 

ここまでして使う人がいるかはよく分からないけれど

参考になればと思いますです。

 

 

リップ作業用MMDマクロの配布と説明

リップの作業を楽にするMMDマクロの配布と説明です。

bowlroll.net

以前から公開してたのですが、今回条件判定を付けて更新しました。

条件判定のやり方は後日、別の記事にでもまとめます。

興味がある人はマクロファイルを見れば分かるかもしれません。

 

MMDマクロ本体をダウンロードして「macro」フォルダに入れて使ってください。

https://mmdm.z5i.net/

 

「リップpip」フォルダの中に6つのマクロが入っています。

1.リップオフセット

2.リップオフセットB(上書き)

3.リップ延長

4.リップ延長(ビブラート)

5.リップ登録

6.リップ初期化

 

1.リップオフセット

実行すると現在フレームの前後に選択中のリップのキーフレーム登録をします。

f:id:PIP_MMD:20220317202831p:plain

320フレーム目でマクロを実行すると上の画像のようになります。

4つのキーフレームの入力値は左から順に 0.0 → 1.0 → 0.8 → 0.0 です。

       f:id:PIP_MMD:20220317203313p:plain

MMMで見るとこのような山型表示になります。

 

音源に合わせてリップを作る場合、タイムラインをカーソルで送りながら

あいうえおの母音が聞こえたところでマクロを実行していけばリップが作成できます。

 

前後にキーフレームが被った場合、

マクロの方で判定して山がいい感じになるように処理してくれます。

f:id:PIP_MMD:20220317204605p:plain

  f:id:PIP_MMD:20220317204705p:plain

326フレーム目で続けて実行するとこのようなキーフレームになります。

単純に追加上書きするのではなく、繋がるように処理されています。

 

条件判定は2つあるのですが説明がめんどくさいので

326フレームの前後2フレームで実行するとどうなるかを下の画像で確認してください。

 

325フレーム目で実行

f:id:PIP_MMD:20220317205418p:plain

    f:id:PIP_MMD:20220317205700p:plain

 

324フレーム目で実行

f:id:PIP_MMD:20220317210500p:plain

       f:id:PIP_MMD:20220317210855p:plain

 

327フレーム目で実行

 f:id:PIP_MMD:20220317213524p:plain

f:id:PIP_MMD:20220317213533p:plain

 

328フレーム目で実行

   f:id:PIP_MMD:20220317213601p:plain

f:id:PIP_MMD:20220317213609p:plain

 

上の場合、329フレーム目以降で実行すると入力値は0がスタートになります。

もっと音を伸ばしたい場合は「リップ延長」のマクロを使います。

 

2.リップオフセットB(上書き)

マ行、パ行、バ行の子音で始まる場合は唇が一度閉じます。

それをするために上書きして最初を閉じるようにするマクロがこちらになります。

f:id:PIP_MMD:20220317214518p:plain

上の画像のようなキーフレームになります。

実際には上書きプラスアルファの処理なのですが説明は省略します。

 

3.リップ延長

f:id:PIP_MMD:20220317215428p:plain

                   f:id:PIP_MMD:20220317215312p:plain

                f:id:PIP_MMD:20220317215322p:plain

オフセットで打ったキーフレームを後ろに引き伸ばします。

ここまで伸ばしたいと思ったキーフレームで実行します。

 

上の画像は331フレーム目で実行した場合。

声が聞こえなくなったな~というところで実行するとだいたいOKかと。

 

4.リップ延長(ビブラート)

f:id:PIP_MMD:20220317220048p:plain

                    f:id:PIP_MMD:20220317220057p:plain

                    f:id:PIP_MMD:20220317220301p:plain

リップを延長するついでにもう一つ山を作ります。

今回お試しで追加した機能で、キーフレームをだいたい3等分して作られます。

 

5.リップ登録

選択中のリップを1.0にして登録します。

ありがたみはあまりないですが、ホットキー登録すれば使い道はあるかも。

 

6.リップ初期化

選択中のリップを0.0にして登録します。

ありがたみがあまりないのは5のリップ登録と同じ

 

【ホットキーの追加について】

MMDマクロのマクロファイルはキーボードに登録することができます。

ダウンロードしてきたMMDマクロに入っている「hotkey.txt」を「hotkey.ini」に書き替えてから、メモ帳で開いてキーボード登録をします。

 

[Lip_set]
key=@
file=macro\リップpip\11_リップ登録.txt

[Lip_reset]
key=[
file=macro\リップpip\12_リップ初期化.txt

[Lip_offset]
key=;
file=macro\リップpip\01_リップオフセット.txt

[Lip_offset_b]
key=:
file=macro\リップpip\02_リップオフセットB(上書き).txt

[Lip_extend]
key=]
file=macro\リップpip\03_リップ延長.txt

 

たとえばこんな感じに書き加えればいいです。

「key=」の後に自分が使いたいキーボードを登録して、

「file」の方に使いたいマクロがあるフォルダパスを書き込みます。

 

配布しているマクロファイルにも「hotkeys.ini」を同梱しているので、

それを「mmdm.exe」があるフォルダにコピペしても有効になります。

 

連続作業をする場合はホットキー登録をすることでかなり楽になります。

音源を元にリップを作成する場合は、タイムラインをカーソルで送りながら、表示枠からモーフの「あいうえお」をマウスで選択して、キーボードを押していくだけでかなり高速で大雑把なリップが作れるようになります。

ダンス動画での歌唱リップならわりとそれだけで大丈夫です。

 

より丁寧なリップを作りたいならそれをベースにしてもいいです。

その場合はモーフ編集しやすいMMMやFace&Lipsをおススメします。

 

最初からMMMを使えば?と思わなくもないですが、

シンプルなものはこのMMDマクロで作った方が速いです。

タイムラインを行ったり来たりする必要がほぼないので

 

長くなりましたが説明は以上です。

MMDマクロを使った条件判定の注意点はまた別の記事にします。