MaskedRealityReport 001 : Azure Remote Rendering
[仮現レポート001] Azure Remote Rendering
お久しぶりです。仮面です。 HoloLens 2を手にしてあっという間に1年が経過してしまいました。MR以外にも並行してVRも継続して関われる日々を送っております。
さて今日から仮面が紹介するxRに関するレポート、1年も経ってしまいましたが、もっぱら直近は “HoloLens 2 マスターへの道”という副題で新しい技術を紹介する
仮現レポート
Masked Reality Report
の連載を開始致します。第一弾としていきなりこの最新技術をレポート!
Azure Remote Rendering
※超備忘録的な走り殴り書き記事です。
誤りあればコメントいただけると非常に助かります。
Azure Remote Rendering (ARR)とは
Microsoft が提供するAzure Serviceの一つ。Remote Rendering したデータをHoloLens 2をはじめとしたマルチデバイスにストリーミングできる。
Azure Remote Rendering
高品質の対話型 3D コンテンツをレンダリングし、リアルタイムでデバイスにストリーミング
Azure Remote Rendering 直近の事例は?
と思った方!あります!最新事例はこちら!
構築方法はホロラボのホームページへ[PR]
リモート(クラウド)レンダリングといえば、OTOY社のOctaneRenderが記憶に新しいが、HoloLens 2 でもリモートレンダリングしかもリアルタイムでできる時代になるとは!去年プレビュー版が出ていたが、今の今まではまったく触れる機会、環境になかった羨望の技術だ。
OctaneRender®
この度、ARRをノンプログラミングでデモができる機会があったためここに備忘録を残す。
このレポートでは設定系の細かいものは大幅に割愛する。
(詳しい話はホロラボのホームページへ[PR])
今回はARRサンプルアプリにおいて、“これは何の画面遷移で今どういう状態?”という視点で、大まかな流れとUnity上でエミュレートした際のUIと画面遷移についてレポートする。
ARR SDK および サンプルアプリは GitHub から
上記githubからまずはダウンロードしUnity Hubで開くのが最初の一歩。
Unity バージョンは2019.4.16f1で行う。2019.4.~の最新版はもっと上なので、Unity Hub 経由で最新バージョンインストールではなく、Githubからダウンロードしてプロジェクト登録後にアラートメッセージからバージョンをインストールするようだ。
昔はUnityサイトで該当バージョンを探しに行っていたことを思い出すとUnity Hubは便利。
ARR サンプルアプリ概略
Unity 上でエミュレートできるパッケージ、これでHoloLens 2用にビルドすると晴れて使えるようになる。設定をするだけのノンプログミングでできる。今回の note はこちらのサンプルアプリの画面遷移について解説するが、その前に設定や下準備が少々必要になるため軽く触れておく。
ARR を使う上での初期設定について
事前準備としてAzureのアカウント、テナント、サンドボックス等の管理者からの事前承認等の準備が必要。この点は割愛。
サンドボックスやコンテナの構造については、昔 Docker、Vagrant 使っていた時を思い出した。(ちょっと思い出したが記憶がほとんどない。。。)
コンテナ自体もソフトウェア側が制御するタイミングで作成するのもとっつきやすい。
モデルの変換は ARR Asset Tool を利用
ARR を使うための下準備。現状の3DCGモデルをARR用のモデルに変換する必要がある。それを解決してくれるのが “ARR Asset tool”だ 。このToolで登録したモデルをARR用に変換処理を行う。設定すればGUIで簡単に変換できて便利(設定方法は割愛)。
このアプリで前述の変換前後に作成するコンテナも定義すれば、コンテナのレイヤーを意識することなく扱うことができる。(便利!)
その後破棄せずにコンテナは残る、これはARR用のコンバートモデルをコンテナ内に保持しているからか。
ARRサンプルアプリの説明
今回のnoteの本題、ARRのサンプルアプリについての画面遷移を解説。起動前の Unity でのInspector 設定方法は例の如く割愛する。(というか思い出せない)
数分触ると理解できるシンプルな作りなので、是非体験して欲しいところだが、初回だと戸惑うので、操作ポイントをベースに記載してく。
メニュー画面
メニューバーがあり、4つのボタンがある。左から順に
Toolesボタン : 後述する空間に配置したARRモデルを編集するツール群
Modelsボタン: 押すと変換が完了したモデルが一覧表示される
Sessionボタン: ARRのセッションを開始するボタン
Shareボタン: Photon などを使った複数台でのシェアリングに使う用のボタン
と並んでいる。
早速ModelsボタンでARRモデルを。。。の前に、ARRのセッションを開始する必要がある。セッションが無事開始できたら、改めてModelsボタンを押すと予め準備したARRモデルが一覧に出てくる。選択するとどこに配置するかを指定し、晴れて表示される。
その後削除や様々な操作などはToolesボタンに完備されている。
App起動 → Sessionボタン → Modelsボタン → Toolesボタン
の順番で覚えておけば良い。
青いゲル状っぽいモヤモヤについて
ARRモデルをロード中には青いゲル状のモヤモヤがでる。リモートレンダリングが無事開始されると表示が切り替わる。いつまで経ってもゲルのままだった場合は、sessionのステータスを確認するとよいだろう。
[最後に]ARRはマルチデバイスの体験シェアリングで必須の技術
改めて思うのは、xR用に3Dデータのリダクションをせずに、大容量のデータをそのまま表示できるようになったという点、非常に有用でここまできたかという感想。ただ、現時点では通信環境により体験に制限がある。5G、6Gなどが広がれば、選択肢として浮上するのではと考える。また、クラウドサービスなので従量課金という壁もある。
その中でも、鍵はマルチデバイスでの体験シェアリングだと考える。将来的には通信環境の高速化から利用料低価格化、または利用時の最適化ができる仕組みができ、その上で、MR/VRデバイスやタブレット端末など、マルチデバイスでの“同じクオリティのシェアリング体験“が手軽にできるようになる。そのためにはARRは必要不可欠な技術だと考える。
[番外編]2019.4の最新バージョンでできるか検証
4.30だったが4.31になったので入れてみる。
できたかどうかはトライしたら追記予定。
次回の仮現レポートは Microsoft Mesh などの公式アプリを予定。