かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

HoloLens と PC 間でのシェアリング?もしくは超簡易 Spectator View の代用品

Vuforia いいですよね。で、調べたらこんな記事を見つけたんです。

blog.d-yama7.com

通常のシェアリングが World Anchor を共通の原点として動作するような仕組みでやってるのですが、Vuforia のマーカーを原点にしてしまおうというやつですね。なるほど!!

んでもって、Vuforia は別に HoloLens に閉じたテクノロジーというわけでもないので、Vuforia のマーカーを認識できるものならシェアリングできるのでは?ということでやってみました。

仕掛け

UWP (Unity製) と HoloLens (Unity製) アプリ間で同じマーカーを認識させる。 そこからのローカル座標などをもとにオブジェクトの設置等を行う。通信はシェアリングサーバー立てるのめんどかったので UDP で無差別にばらまいてる。

とりあえず、PC のアプリの画面をキャプチャした動画を上げておきます。 マーカーは動画手前に移りこんでる赤っぽい宇宙服着た人の絵です。Vuforia の組み込みのやつですね。

www.youtube.com

部屋が狭いので、あんまりシェアしてる感がないですが…。 作ったアプリは、HoloLens で AirTap したら HoloLens の前方にリンゴが出現。そしてリンゴをジロジロ嘗め回すように見てる様子を記録して、後で頭の位置を再生できる(白い頭のオブジェクトが動いてるやつ)っていうものです。

PC から HoloLens で見てる世界をのぞき見で来てますね!やったね!!

まぁでも、まだ不安定だったりしますが…。

ソースとりあえず整理してないですが…。

GitHub に上げておきます。 UWP を立ち上げてマーカー認識、HoloLensアプリを立ち上げて同じマーカーを認識。あとは、適当にAirTapしてリンゴを置いたらボタンを押せばいいです。

Unity 2017.2 で作ってます。

github.com