Hiromuブログ

最近はこちら(https://zenn.dev/hiromu)が本体

GearVRにGoogle Street Viewを表示するサンプル実装


ということで、Gear VRでGoogle Street Viewを表示するサンプルをつくってみました。

準備

androidの実機で確認するにはOculus Signature File (osig)というファイルが必要になります。osigファイルの取得方法等は以下になります。

  • DeviceIdの確認
    1. androidをPCに接続する
    2. コマンドプロンプトでadbのあるパスに移動(パスが通してあれば必要ない)
      例 C:\Users\<ユーザ名>\AppData\Local\Android\sdk\platform-tools
    3. 以下コマンドを実行
      adb devices
  • osigの取得
    こちらのサイトにDevice IDを入力しosigファイルを取得する
  • osigファイルの格納
    取得したosigファイルをプロジェクト配下の以下に格納する
    <プロジェクトトップ>\Assets\Plugins\Android\assets

実装

ソース(GitHub)

やっていることはシンプルでStreetViewの画像6枚取得し、Skyboxに取得した画像を設定しているだけです。

■参考サイト1
Unityでストリートビューを歩く

この実装で試したところPlayボタンを押したときにUnity上では問題なく表示されるが、androidの実機ビルドではなぜかSkyboxが表示されなかった

■参考サイト2
UnityでGoogle Street Viewを表示させる

Skyboxとmaterialを動的に生成していないのがひとつ上の参考サイトとの差分だが、こちらは問題なくandroid端末で動作した

ビルド

実行

こんな感じで360度みることができます。

Screenshot 2015 12 21 04 20 27

おわりに

とりあえずGear VRでGoogle Street Viewが見れるようになりました。しかし以下問題点があります。

  • 画像サイズ2048x2048まで取得できるのかと思いきやいざAPI叩いてみると取得できる画像が640x640のせいか、全体的にぼやけて見える
  • 画像のつなぎ目が目立つのと、各画像のすみにGoogleのロゴがあるのがいまいち

この辺の問題点が解決できそうであればUIを作り込む価値はありそうですが、ひとまず実験はここまで。

おまけ

わざわざ実装しなくても、以下Youtubeに紹介されている方法でもGearVRでStreet Viewが見れます。