LoginSignup
0
0

More than 5 years have passed since last update.

【Unity入門】OculusGo⇐⇒Flask連携;Textをもらって盛って表示する♬~OculusGoの独立と新しいサービスの予感?!

Last updated at Posted at 2018-06-16

flask-Unity-OculusGo.jpg

概念図は上記のとおり

今回は、アプリは前回の記事のとおりで、結線変えて遊んだ話です。

つまり、OculusGoって、一度アプリを転送してしまえば独立に動くんじゃないか
ということでやってみました。

やったこと
(1)flaskを動かすサーバー(マシン)を変更する
(2)GetTextが見に行くURLを変更する
(3)UnityでBuild&Runして、OculusGoにアプリ転送する
(4)OculusGoのUSBケーブルを分離して独立させて、動かす
   同時にapp.pyを動かしたり、止めたりする

(1)flaskを動かすサーバー(マシン)を変更する

まんまです。
ただし、今はWiFi環境内で動かしています。
実際、ルーティングの話は、以前の参考見てください
※単に参考記事に飛んでるだけでやっていませんが、。。
ここで大切なのは、そのマシンのIPアドレスです。
これを取得してください。。。

(2)GetTextが見に行くURLを変更する

Unityのスクリプト、GetTextの見に行くwwwのURL(以下の★の部分)を上記のflaskのWebサーバーのIPアドレスに変更します。
Unityで動かす場合も、これで問題なく動きます。。。

GetText.cs
IEnumerator Start()
    {
        WWW www = new WWW("http://192.***.***.★★★:5000/");
        yield return www;

これで準備ができました!

(3)UnityでBuild&Runして、OculusGoにアプリ転送する

これもまんまです。
正しくOculusGoとUnityのマシンをUSBで繋いでください。
ここで一度、OculusGoで確認するといいと思います。
もちろん、flaskマシンでapp.pyを実行しておいてください。
実行していなくとも以下のようなDefault表示が出ますが、今回はこれはwwwと通信した証拠にはならないので注意です。

(4)OculusGoのUSBケーブルを分離して独立させて、動かす

さてさてクライマックスです。
USBケーブルの結線をはずして、OculusGo内のアプリを動かします。
これは、「ナビゲーションーライブラリー提供元不明ーアプリ」の順に選んでください。
一度、クリックするとフラッシュします。
そして、二度目のクリックで起動します。
ここで、app.pyが動いていないと、Unityのそれぞれで設定されているDefaultが表示されます。
今回のアプリでは
Old Text
New Text
Button
と表示されます。
そして、この状態からapp.pyを動かすと、
Hello Unity
Hello Unity
Hello Unity
に変わります。
さらに、app.pyを停止すると
Unknown Err
Hello Unity
Hello Unity
に変わりました。
これは、Canvasを二種類とButtonを配置していて、下のCanvasとButtonはUnityアプリのStart時点でのみWWWにアクセスしてデータ取得する設定にしていますが、上のCanvas内のTextでは逐次アクセスしてデータ取得しているためです。
因みに、最初Unityアプリを起動時、app.pyは停止していてDefault表示はOKですが、その後app.pyを起動した時点で正しくHello Unityが表示されるのは、やはり IEnumerator Start()であるため、"こと"が発生するまでStart()で待っていると考えられます。
【参考】
IEnumerator

まとめ

(1)OculusGoに取り込んだアプリはOculusGo独立で動かすことができました。
(2)flask-OculusGo連携が確立しました

⇒つまり、ブラウザにアクセスする方法としてブラウザだけじゃなく、OculusGoのようなもので直接連携できるということです

Flask-OculusGo連携はVRの世界が主流になる次の世界では流行るかもしれない(笑)
ここで大切なことは、OculusGoのブラウザでも"Hello Unity"の文字は見えるんだけど、Unityで開発した新たな付加価値がついた形(VR・ARや3Dや物体検出・認識・追跡や。。Avatorや。。。なんかの付加価値等)で提供できるサービス(今回はボタン表示やPanelと浮いてる文字だけど。。)がそこにある。。。最後盛ってみました(笑)


※画像をクリックするとYouTube動画につながります
OculusGoのUnityからの独立;falsk-OculusGoの直接連携?!
※YouTubeに前回と同じ動画と判定されて上書きされてしまった。。まあ長さは少し違うけど^^;

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0