見出し画像

180°MMD VR の手順覚書 v1.02.5

 VRと聞くと、顔に装着するハードのVRゴーグルのみを連想されると思いますが、PCやスマホ単体でもあの自由に見渡せるような動画は体験可能です。そんな動画を制作する方法を様々な文献を基にまとめた備忘録です。円滑な説明の為にやや指定や制限のある場所があるかと思いますので、そういった部分はチュートリアルの終了後に各自でアレンジしてみてください。360°版の説明も追記する予定です。

 動画ファイルが8Kともなれば膨大なリソースを必要としますので出力待ちの根気が要ります。失敗するとダメージが大きいので、まずヴァニラで実験してから臨みましょう。
4KではAVIファイルの合計が100GBに達しました。ディスクの寿命や読み書き速度を考慮し、出力はC:以外の他ドライブに移動することをお勧めします。

 せっかちホモでも上から順番に読み実行しさえすれば、末尾へ到達する頃には動画のできあがりかと思います。チャチャチャッと太字部分のみ読めば終わりっ!すげぇよ、簡単簡単 調べれば手法はたくさんありますが、多分これが一番手軽で安定していると思います。

1、用意するもの

下記太字リンクは全てファイルをダウンロードし解凍しておいてください。

イ エンコードソフト
  手っ取り早く処理したい方は王道をゆくTDEncをどうぞ
  https://tdenc.com/TDEnc2/download/

 EquirectangularX AVI多面出力UWSCスクリプト | Tark's storage
   下記ニの自動化ソフトを制御するスクリプト。
  https://tark.sakura.ne.jp/log/mmd/equirectangularx_output/

ハ 
EquirectangularX(V1.1) for MMD
   MMDの表示方式をVRに対応させるエフェクト。
  https://bowlroll.net/file/166172

ニ UWSCの詳細情報 : Vector ソフトを探す!
   ここでは本来10回(360°なら12回)もする必要のあるMMDからのAVIエクスポートを自動化するソフトウェア。ぐう便利
  https://www.vector.co.jp/soft/winnt/util/se115105.html

 VR180 Creator
   出力した動画をVRとして読めるように変換する。
  https://arvr.google.com/vr180/apps/

  2022/08追記 Googleがツールの公開をやめてしまったようです。
   以下が直リンとなっています。情報提供ありがとうございました。
  https://twitter.com/kaniruw/status/1429076290817052677
  https://storage.googleapis.com/vr180-creator/download/VR180_Creator_windows_4.0.0.zip

 MMD VR動画用クリッピングファイル(180°)- BowlRoll
   10数個の動画の断片をAviutl上でつなぎ合わせる際に使用。
  https://bowlroll.net/file/198513

ト MikuMikuDance
チ Aviutl
リ UT Video Codec
  気が向いた兄貴は寄付してどうぞ
  http://umezawa.dyndns.info/wordpress/?cat=28
ヌ!  MikuMikuEffect
   もう導入済みだね

2、VR化したいMMDプロジェクトファイルを用意する

  題目のとおり、pmmファイルを用意します。ここからVR仕様へセットアップを開始します。

1、現在のカメラモーションは全て削除してください。その後XYZの欄へ0を入力、
この状態にして登録。

画像1

2、動画サイズは180°の場合は1080x1080などの正方形にします。

  後に左右へ2つ並び、2160x1080の動画となります。360°の場合は縦x横が1:2の1080x2160などにします。
チュートリアルにつき速度重視の為、画素は少なめに設定しています。再生時に表示される画素は体感で1/4程度になってしまいますので、ここは大きければ大きいほどよいです。すると当然ながら重くなってきますので、お持ちの機器と話し合って決めてください。

画像11

3、MikuMikuDance_vxxx\UserFile\Modelにある「ダミーボーン.pmd」を読み込む。

  ここからのカメラは全てこのカメラの追従するダミーボーンで制御します。カメラ・照明・アクセサリモードでカメラは一切操作しないようにしてください。カメラだけで動かすと正しく出力されないようです。

4、カメラ操作をダミーボーン「ボーン01(以下01)」へ登録(下図示)。

5、右端の追従ボタンを一押し(下図示)。

  視点となるボーンの位置へ移動し、操作をしやすくしました。      足元がどアップになりますが慌てないように。

6、視野角を90~95へ設定、登録(下図示)。

  小さいほど動画の境目にズレが少ないが逆にミゾが発生する模様。     
  93が程良いようです。

画像2


7、ボーン01を程よい場所へ動かす。

  ボーンを動かして視点を変更します。サンプルの値として、大体のモデルの主に上半身を映せるY14前後、Z-10前後を入力します。場所の移動のみです。回転はしないように。

画像3

8、ハ エフェクトEquirectangularXを適用します。 

  解凍したEquirectangularX.xをMMDへD&D。このエフェクトに同梱の
Readmeを参照しつつ、Siに0.5、Rzに0と入力(180°時)、登録。

画像4


  次に、出力したいフレーム数をここへ入力。

画像15


  MMDはこれにて準備完了。わかりやすい場所へpmmを保存。ここでは動画出力の必要はありません。

3、ハ、ニ UWSC/スクリプトの設定をする。

  パズル様に分割された景色を自動でAVIで出力するツールです。
mmd_equirectangularx_output_1.0内のsampleフォルダ内の「sample180.ini(360°時はsample360.ini)」、「mmd_equirectangularx_output.uws」を使用します。

1、sample180.iniを開き下記それぞれのファイルのあるアドレスに置換。次にオレンジ矢印の示す行の頭にあるセミコロン(;)を削除。動画出力先を好みの場所へ指定し保存。

  これは180°、360°で共通。一般的に、複数ディスクを搭載している場合は関連ファイルや動画出力先をそちらに指定した方が高速です。

[MAIN]
; MikuMikuDance.exeのフルパス
MMD=C:\Users\  任意  \Documents\MikuMikuDance_v932x64\MikuMikuDance.exe
; 読み込むpmmファイルのフルパス
PMM_FILE="C:\Users\  任意  \Desktop\360\1.pmm"
; 出力するAVIファイル(プリフィックス)のフルパス。このファイル名の後にCOMMANDで指定するサフィックスが付加される
AVI_PREFIX="C:\Users\  任意  \Desktop\360\"
; AVI出力設定で選択するコーデック
CODEC="UtVideo YUV420 BT.709 DMO"
; AVI出力フレームレート(省略時は30)
FRAME_RATE=60

画像5

4、AVI出力

  前項に次いでUWSCを起動。小さいウィンドウが出てきたら、

画像6

ここへ「mmd_equirectangularx_output.uws」をD&D。

  すると、この右のダイアログが出ますので

画像7

  ここへ先ほど編集した「sample180.ini(360°時はsample360.ini)」をD&D。出力が始まります。手動では大変な作業をPCが処理している間、しばらく待ちます。処理中は止まることがあってもちょっかい出さないこと
  処理が重いため、不要なアプリケーションは閉じておいた方がいいかも、あとMMPlusなどを入れている場合干渉する(ダイアログを出して処理を中断させる)ので一時的に避けておこう

5、AviutlでAVI群をまとめる

  見てのとおり、只今出力したAVIたちはそれぞれ景色の一部です。これらを並べてひとつながりのパノラマとします。

1、Aviutlを開き、動画サイズ2160x1080、60fpsで新規作成(180°)

  180°の場合はこのように横幅をMMDでの横画素の2倍にします。

2、まずレイヤーの奇数行にへのマスクの画像を並べ、下記小技の手順で全選択し拡大率を50にします。

画像16

  上記マスクの画像サイズは2160x2160です。このままでは大きいので今回の1080x1080に合わせます。

3、偶数行に出力したAVIを並べます。下記画像のとおりに配置してください。

  この手順はかなり手間なので、AVI動画とクリッピング画像の場所を決めておくなど後々テンプレートとして使えるように工夫しておくとよいです。配布を考えましたが、aupの仕様では素材がフルパスで指定されているため流用はできないようです。

画像9

4、次に、AVIファイルの指定されている全ての偶数行先頭のLayer〇〇の部分を右クリックし、「上のオブジェクトでクリッピング」を選択。

画像10

5、Layer1~10までの素材を左へ-540移動、Layer11~20の素材を右へ540移動します。

  図中〇内にそれぞれ入力し、左右に正方形の動画を並べます。この540という値はMMDでの横画素1080の半分です。

画像14

  音声も鳴らしたい場合はここでLayer21などに入れてください。
  このように表示されていれば成功です。AVIに出力してください。

  小技:Ctrlキーを押しながらマウスドラッグでタイムライン上の素材を範囲指定することができます。押し続けながら範囲指定した後にクリックで除外もできます。
  一括で値を変更したい場合は、押しっぱなしで素材を選択、値をクリックしてCtrlキーを離し、入力で可能です。

Aviutlが動作しない?Aviutlの画面があるウィンドウ上部プルダウンメニュー
ファイル→環境設定→システムの設定で、上の方の「最大画像サイズ」に5600など大きな値を入力します。大きすぎても動きません

画像12

6、仕上げ


  このままではサイズが大きいのでMP4形式にエンコードします。
筆者は60fpsでFHDなら8000kbpsに設定しています。

ホ のVR180 Creatorを開き、VR180 Creator.exeを探して起動、
公開の準備を選択、そこへ先ほどの動画MP4をD&D。エクスポートして終了。

画像13

  標準的なプレーヤでもVR動画は観られるようです。ここではVLCプレイヤーを使用しています。180°動画は2つ向かい合わせ360°の様に表示し、スクロールで拡縮ができるなどYoutubeよりも高機能ですが、アス比が少し不安定なのが玉に傷

画像16

この画像は4K出力です。


7、完成

  この手順で制作した動画がこちらになります。マウスやタッチでドラッグすれば、きちんと見渡せる形式になっているかと思います。

  気持ちよく作れましたか…?

  今回こちらの動画は説明の為に簡潔なヴァニラですが、SSAO系・Vignette系等のエフェクトは干渉を起こす様ですので、まず試しに1つ手動で出力し、問題なさそうであればその後UWSCを使用することをお勧めします。

  質問などはコメント欄にどうぞ。可能な限り回答すると思います。参考にしてくれた方は、よければで構いませんがコメント欄で知らせて頂けるとありがたいです。観に行きます。

参考文献:

https://tark.sakura.ne.jp/log/mmd/equirectangularx_output/
https://chiritsumo-blog.com/mmd-vr-180/
https://bowlroll.net/file/166172
【MMD講座】自動化ツールを使おう!MMD VR動画のつくり方
https://is.gd/V0WDeu

この記事が気に入ったらサポートをしてみませんか?