分子受肉の話の続き

要約

(2021年4月:(おそらくOculus側のソフトウェアアップデートにより)Oculusのソフトウェアを立ち上げながらSteamVR側でHMDのトラッキングをすることができなくなってしまったようです。残念ながら、ここに書いていあるやり方は通用しなくなってしまいました) やりたいことがOculus版のソフトだとうまくいく。なので「Oculus版のMR機能+バーチャルモーションキャプチャー」の方法を模索する。結果的に、だいたい動いた。ただ、カメラのキャリブレーションが難しいのでどうにかしたい。


以下、私的な試行錯誤ですので、なにかあれば私@skm58によろしくお願いします(なんとなくふと気になって追記しました 2019/07/02)

この続きの、カメラ位置を(無理やり)合わせる方法はこちら


注意(2019/03/01 22:00 added)

以下の手順を試していて、どこかの段階で環境が壊れる例があったそうです(ツイートをリンクさせていただきます)。もしやる場合は気をつけて取り組んでください。

HMDに何も映らなくなり、NVIDIAドライバーの再インストールで復旧したとのことですが、原因不明で直る理由もわかりません。もしすでに他に不具合がでた方がいたら申し訳ありません。

BE CAREFUL. This procedure may cause some troubles in your PC environment, so please REALLY careful to do this. One reported that HMD went black at a certain step of following procedues and required reinstallation of NVIDIA driver. It’s unclear what cuased this and why it’s recovered by reinstallation.

自分の環境ならどうにでもなるのですが、ひとさまの環境を壊す可能性のあるものを書くのは怖すぎる。。。

結果

まえは、自分の体の前に出せない(alpha maskがつくられない)ものがあったが、大丈夫そう。これで技術的な問題は解決、実戦投入できそう。ただ、後述するようにカメラ位置合わせが難しく、今回の動画もずれてる。

ながれ

私はゲームでは試してないのだが、しらべたところOculusのBeatSabarでMR合成しようとした人がいた ので、他のゲームでも運が良ければ使えるかもしれない。このあたり、日本語の文章がほぼ存在しない(英語も超少ないけど・・・)ので、もしこのメモがだれかの参考になれば嬉しい。

作業メモ

一部の分子モデルが正しく画像合成されない問題

前回、Steam版Nanome + VMC + LIVの組み合わせでかなりやれることがわかった。しかし、クロマキー合成すると、特定のモデルが常にアバターの裏側に行ってしまう問題が残っていた。テスト動画では、surface表示にしてから体の前に持ってくることでごまかしたが、これだと実用上問題がある。直したい。

仕様らしい

色々試してみて、これはビューアソフトの問題だとわかった。4分割画面の時点でalpha maskが正常に表示されないことを確認したので、ビューアソフト内部の問題だと判断し、開発企業に問い合わせた。結果、そういう挙動になることは既知、との答えをいただいだ。とても詳しく回答をいただいて、非常にありがたかった。もはや打つ手がない感じで、ちょっと残念だ、というのが前回までの話(書いてないけれど)。

Oculus版の存在を思い出す

ほぼ諦めかけていたのだが、偶然、このまとめを目にした。

Oculus Rift+バーチャルモーションキャプチャー+LIVでMR合成する方法

とても参考になった。

「Oculus APIだとLIVをつかったMRSはできない」というところを読んだ時、そういえばOculus版もあったことを思い出した。たしかOculus版の方にはMixed Reality Captureという機能があった気がしたので、その動かし方を調べた。おおかた公式で説明されていた。ここのサイト

(関係ないが、このOculusのMRC周辺のドキュメントは、リンクが切れていがちで精神的に翻弄されやすい。たぶん日本語版のページがないのだろう。記事の中のリンクではなく、左の別枠にあるリンクでひらけば大丈夫)

なぜかOculus版だとうまくいく

まず、コマンドラインから目的のソフトを以下のオプション付きで起動して、二画面分割が出ることを確認。

この時点で、Steam版でのクロマキーのfront/backの認識されない問題が回避できていることがわかった。

次に、以下のオプション付きで起動して、LIVのcompositorと同じような画面が出ることを確認(Unityがまだシグナルを送ってません、的なガビガビの文字)。

さらにVMCを起動し仮想カメラをONにした状態で、directcompositionで起動し、画面サイズと背景色を合わせるとクロマキー合成ができる。

これで、システム的にはOculus版でもVMCを使ったクロマキーができるようになった。

やっとできた!・・・のだけど、まだ問題が残っている。

カメラキャリブレーション

カメラキャリブレーションが難所だった(いまだに完全には解決してない)

本番

Oculus版のMR機能についてわかったこと

Steam版のexternalcamera.cfgに相当する情報が、二つのファイルに分かれている。

参考:OculusのBeatSabarでMR合成を頑張ろうとした先人のレポジトリ. BSOculusMREnabler

次やりたいこと

参考

追記

使用ソフト

Tweet