概要
TOPPERS/箱庭では,ROS2 で Unity ロボット制御できるようにしていましたが,これが VR 空間上で体験・操作できるようになりました!
ちなみに,こんな感じのことができます!!
この体験をいろんな方と共有したく,これから 3 回に分けてインストール手順を説明していきたいと思います.
以下,記事の構成です.
- 1 回目:TOPPERS/箱庭に Oculus でダイブできるにようになる(本記事)
- 2 回目:VR 空間で移動してモノをつかめるようになる
- 3 回目:タッチセンサを追加して,VR 空間のロボットを動かせるようになる
なお,今回のトライでは,こちらの記事に助けられました(感謝,感謝)
環境構成
将来的にクロスプラットフォーム対応していく予定ですが,今回の構成は以下の通りです(インストールされていることを前提で話を進めます).
PC 側
- OS:Windows 10 home(proでもよいが,11 は不明)
- WSL2:Ubuntu 20.04.3 LTS
- Unity:2021.2.1f1
- Unity Hub:3.0.1
Oculus 側
- ハード:Oculus Quest2
- リンクケーブル:oculus quest 2用 ケーブル
手順サマリ
- PC に Oculus Link をインストールする
- TOPPERS/箱庭をインストールする
- TOPPERS/箱庭の Unity プロジェクトを起動する
- Oculus Integarion をインポートする
- XR Plug-in Management を有効化する
- 箱庭にダイブするためのキャラクタを配置する
- レッツ ダイブ!
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 を起動して,「開く」をクリック
エクスプローラ上で,先ほどインストールしたTOPPERS/箱庭のUnityプロジェクトのルートフォルダを指定します.今回の場合はこちらです.
C:\project\hakoniwa-ros-samples\ros2\unity\robo-parts
Unityが起動したら,プロジェクトビューから「Scenes」を選択して,Toppers_Course
というシーンをダブルクリック.
成功するとこんな風景が見えます.
Oculus Integarion をインポートする
ここから Oculus の Unity 設定になります.
まずは,Oculus Integration
を以下からインストールしましょう.
上記からインストールを始めるとUnity側で以下のような画面が表示されますので,Import
をクリック.途中,色々聞かれますが,基本的にはアップグレードしていく方向で選択します.以下,細かな選択画面で悩みそうなところだけ,ピンポイントに選択箇所を示していきます.
OpenXR Backend
は,Use OpenXR
を選択.
迷わず,Restart
を選択.
インストール成功すると,プロジェクトビューのAssets配下にOculusができています.
XR Plug-in Management を有効化する
ここから,Unityプロジェクトの設定に移ります.
Unityメニューの [Edit] -> [Project Setttings...] をクリック.
画面左のXR Plug-in Management
をクリックし,Install XR Plugin Management
をクリック.
インストール完了後,以下のOculus
をチェックしましょう.
箱庭にダイブするためのキャラクタを配置する
ここまでくれば,あとは Oculus から Unity にダイブするためのキャラクタを配置するだけです.
以下の要領で,キャラクタを配置してください.
レッツ ダイブ!
以上で,設定終了です.
では,ダイブしましょう.
まずは,Oculus と PC をリンクケーブルで接続して,Oculusを装着してください.
うまく行くと,以下のようなバーが出てきますのでデスクトップ
をクリック.
そうすると,パソコン側のデスクトップ画面がこんな感じで表示されます.
あとは,いつものように,Unityのシミュレーション開始ボタンをクリックすると,以下のように VR 空間にダイブし,ロボットが見えます!
実際に自分がダイブした風景はこんな感じです.
次回は,ここに右手と左手を追加して,モノをつかめるようにします!乞うご期待ください!!
お知らせ:箱庭もくもく会
TOPPERS箱庭WGでは,もくもく会を不定期に開催しています.
本記事の内容を実際に試してみたい方や試してみたけど詰まっている方は,ぜひご参加ください.画面共有しながら参加者同士でサポートしたり,一緒に新しい機能を実装したりと”もくもく”しましょう.