Blog

externalcamera.cfgの作り方

まず、externalcamera.cfgってなんだという方、下記を先にご覧ください。

HTC Viveを使ったMixedReality

 

さて、MixedRealityをやる際に重要なexternalcamera.cfgですが、中身は単なるテキストファイル。

x=0.01062283
y=0.01919141
z=-0.1200893
rx=289.3507
ry=82.38242
rz=96.94111
fov=61.78545
near=0.1
far=1000

こんな内容です。これは、リアルの世界を撮影するカメラの

1、位置(x,y,z)

2、角度(rx,ry,rz)

3、画角(fov)

4、表示できる距離(near,far)

4の距離はあまり意味がなく、0.1と1000固定でもいいと思います。

問題は123です。これを試行錯誤で割り出すのは大変なので、そのためのツールがいくつかあります。

今回はそれらを比較してみようと思います。

動画を合わせて見るとわかりやすいです。

1、MixedRealityTwoControllerのcameraalign

How to Create Mixed Reality Videos for the Vive – with Two Controllers

という記事があります。この記事は、2つのコントローラーだけでMixedRealityを実現するときに、VirtualControllerを作って3つめのコントローラーを作る、という記事なのですが、この中で

MixedRealityTwoController-0-0-3.zipがダウンロードできます。

この中にcameraAlign.exeというUnityで作られたアプリがあり、これでexternalcamera.cfgを作ることができます。

簡単に作れるのですが、微調整が出来ないので、実際にはそのまま使えないと思います。微調整は自分でなんとかするしかないかと。

2、Steamで販売されているvivr

とても簡単に作ることができます。

カメラの位置を指定して、4隅でコントローラーをタップするだけです。

オプションとしてカメラの遅延秒数も測れます。

ちなみにこれで作成すると、

sceneResolutionScale=0.5
frameSkip=0
frameLatency=0

という他のでは作成されない項目が作成されます。これは使われてるんでしょうか?

 

3、MixedRealityConfigurator

http://tribalinstincts.com/mixedrealityconfigurator/

動画 https://youtu.be/OlwqAYKR_nc

このアプリはとても丁寧に微調整できます。

グリーンバックの部屋にマーカーを貼り、そのマーカーの位置を微調整することでかなり正確なexternalcamera.cfgを作れます。

ただし、私にはちょっとめんどくさい作業でした。

というのもカメラには私はトラッカーを載せているのですが、

このアプリはトラッカーに対応していません。

そこでトラッカーをコントローラーに偽装します。

https://liv.tv/htc-vive-tracker-mixed-reality

参考 http://community.viveport.com/t5/Developer-Discussion/Vive-Tracker-Role-Changer-current-version-0-8/m-p/6602

このVIVE Tracker Role Changer 0.8.exeは、ViveのコントロールボックスをPCから外し(私は電源を抜きました)、トラッカーを有線接続したうえで実行します。

そしてSteamVRを再起動してください。

この後、トラッカーだけ電源を入れ、あとは上記の動画のように設定できます。

終わったらViveの接続を外し、再度実行してトラッカーの認識に戻しておきましょう。

便利なんですけど、面倒は面倒です・・・

 

あと、この微調整の前の認識も大変です。

MRに使うカメラの映像がうまく出ないことがあります。(XSPlit推奨はそのせい?)

2/5の場面で、トラッカーのほうに仮想MRカメラがくっつくはずが、手元のコントローラーにくっつくことが何回かありました。

とにかくうまくいくまでに10回は試行錯誤したと思います。

 

おすすめは

私は2のvivrです。有料ですが安いですしとにかくノートラブルです。

HMDをかぶる必要もありません。

オプションの遅延測定も便利です(こっちはたまにおかしくなりましたが)

 

さぁexternalcamera.cfgさえ作ればあとは動画を撮るだけ。。。なんですが、これもちょっと一手間あります。

これはまた別の記事でご紹介しますね。

Post a Comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*