ということで、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端末で動作した

ビルド

  • File -> Build Settings -> Player Settingsの
    OtherSettingsのVirtual Reality Supportedにチェックを入れる
  • Minimum API Levelを19にする
  • android SDKパス(ビルド時に聞かれた場合は以下のようなsdkのある場所を指定する)
    C:\Users\<ユーザ名>\AppData\Local\Android\sdk
  • Bundle Identifierのエラーが出た場合
     参考:【Unity】Error building Player: UnityException: Bundle Identifier has not been set up correctly
     →英数字とアンダースコア(_)でないとダメ
     →数字で始まるものやハイフンはダメ

実行

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

Screenshot 2015 12 21 04 20 27

おわりに

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

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

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

おまけ

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

トラックバック

コメントする

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