LoginSignup
8
8

More than 1 year has passed since last update.

Unity + Oculus Quest2 + ROS2 + 箱庭でロボットを動かす(1/3)

Last updated at Posted at 2022-02-11

概要

TOPPERS/箱庭では,ROS2 で Unity ロボット制御できるようにしていましたが,これが VR 空間上で体験・操作できるようになりました!

ちなみに,こんな感じのことができます!!

この体験をいろんな方と共有したく,これから 3 回に分けてインストール手順を説明していきたいと思います.

以下,記事の構成です.

なお,今回のトライでは,こちらの記事に助けられました(感謝,感謝)

環境構成

将来的にクロスプラットフォーム対応していく予定ですが,今回の構成は以下の通りです(インストールされていることを前提で話を進めます).

PC 側

  • OS:Windows 10 home(proでもよいが,11 は不明)
  • WSL2:Ubuntu 20.04.3 LTS
  • Unity:2021.2.1f1
  • Unity Hub:3.0.1

Oculus 側

手順サマリ

  1. PC に Oculus Link をインストールする
  2. TOPPERS/箱庭をインストールする
  3. TOPPERS/箱庭の Unity プロジェクトを起動する
  4. Oculus Integarion をインポートする
  5. XR Plug-in Management を有効化する
  6. 箱庭にダイブするためのキャラクタを配置する
  7. レッツ ダイブ!

PC に Oculus Link をインストーする

Oculus Link のインストール方法はこちらをご参照ください

TOPPERS/箱庭をインストールする

まず,WSL2/Ubuntu20.0.4 を起動し,以下のプロジェクトを作成します(Cドライブ直下にプロジェクトを作成).

$ mkdir /mnt/c/project
$ cd /mnt/c/project

次に,TOPPERS/箱庭リポジトリをクローンします.

$ git clone --recursive https://github.com/toppers/hakoniwa-ros-samples.git
$ git checkout vr-robo-parts

こちらから,Plugin.tar.gz をダウンロードします.

ダウンロードしたファイルを,/mnt/c/project/ros2/unity/robo-parts/Assets/以配下に配置して展開します.

$ cd /mnt/c/project/ros2/unity/robo-parts/Assets/
$ tar xzvf Plugin.tar.gz

成功すると,必要なプラグインが展開されます.

$ ls ros2/unity/robo-parts/Assets/Plugin
Google.Protobuf       Grpc.Core.Api.meta  System.Buffers       System.Runtime.CompilerServices.Unsafe
Google.Protobuf.meta  Grpc.Core.meta      System.Buffers.meta  System.Runtime.CompilerServices.Unsafe.meta
Grpc.Core             Hakoniwa.dll        System.Memory
Grpc.Core.Api         Hakoniwa.dll.meta   System.Memory.meta

TOPPERS/箱庭の Unity プロジェクトを起動する

Unity Hub を起動して,「開く」をクリック

image.png

エクスプローラ上で,先ほどインストールしたTOPPERS/箱庭のUnityプロジェクトのルートフォルダを指定します.今回の場合はこちらです.

C:\project\hakoniwa-ros-samples\ros2\unity\robo-parts

Unityが起動したら,プロジェクトビューから「Scenes」を選択して,Toppers_Courseというシーンをダブルクリック.

image.png

成功するとこんな風景が見えます.

image.png

Oculus Integarion をインポートする

ここから Oculus の Unity 設定になります.

まずは,Oculus Integration を以下からインストールしましょう.

上記からインストールを始めるとUnity側で以下のような画面が表示されますので,Importをクリック.途中,色々聞かれますが,基本的にはアップグレードしていく方向で選択します.以下,細かな選択画面で悩みそうなところだけ,ピンポイントに選択箇所を示していきます.

image.png

OpenXR Backendは,Use OpenXRを選択.

image.png

迷わず,Restartを選択.

image.png

インストール成功すると,プロジェクトビューのAssets配下にOculusができています.

image.png

XR Plug-in Management を有効化する

ここから,Unityプロジェクトの設定に移ります.

Unityメニューの [Edit] -> [Project Setttings...] をクリック.
画面左のXR Plug-in Managementをクリックし,Install XR Plugin Management をクリック.

image.png

インストール完了後,以下のOculus をチェックしましょう.

image.png

箱庭にダイブするためのキャラクタを配置する

ここまでくれば,あとは Oculus から Unity にダイブするためのキャラクタを配置するだけです.

以下の要領で,キャラクタを配置してください.

demo99.gif

レッツ ダイブ!

以上で,設定終了です.

では,ダイブしましょう.

まずは,Oculus と PC をリンクケーブルで接続して,Oculusを装着してください.

うまく行くと,以下のようなバーが出てきますのでデスクトップをクリック.

image.png

そうすると,パソコン側のデスクトップ画面がこんな感じで表示されます.

OculusScreenshot1644571672.jpeg

あとは,いつものように,Unityのシミュレーション開始ボタンをクリックすると,以下のように VR 空間にダイブし,ロボットが見えます!

OculusScreenshot1644571696.jpeg

実際に自分がダイブした風景はこんな感じです.

次回は,ここに右手と左手を追加して,モノをつかめるようにします!乞うご期待ください!!

お知らせ:箱庭もくもく会

TOPPERS箱庭WGでは,もくもく会を不定期に開催しています.
本記事の内容を実際に試してみたい方や試してみたけど詰まっている方は,ぜひご参加ください.画面共有しながら参加者同士でサポートしたり,一緒に新しい機能を実装したりと”もくもく”しましょう.

8
8
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
8
8