ブログ@HoloLabInc

株式会社ホロラボのブログです

Azure Remote Rendering(プレビュー) 単体セットアップ (2020年9月版)

Azure Remote Rendering(ARR) セットアップがだいぶ変わっていたので「2020年9月版」として動画にまとめました。なお、単体としているのは現在のARRではPhotonとAzure Spacial Anchors(ASA)を使用したSharingも可能になっているためです。ARRのSharingについては別記事にて紹介予定です。

ARRの概要はこちらを参照してください。

blog.hololab.co.jp

セットアップ動画

Azure環境の作成からHoloLens 2での動作確認までまとめた動画です。

www.youtube.com

ドキュメントはこちら

docs.microsoft.com

リポジトリはこちら

github.com

ポイント

設定方法の変更によって、いつくか動作が止まるポイントがあります。

ストレージアカウントへRemote Renderingの権限を付与する

ストレージアカウントで下記3つの権限をRemote Renderingに付与します。この手順が抜けている場合、モデルを選択した後でエラーが発生します。

  • 所有者
  • ストレージアカウント共同作成者
  • ストレージBLOB共同作成者

f:id:kaorun55:20200914065831p:plain

Windows 10 SDK(10.0.19041.0) をアンインストールする

Windows 10 SDK(10.0.19041.0)がインストールされている場合、実機上の動作でモデル名が見えない現象が発生します。Unityのビルド設定でSDKバージョンを変更しても改善せず、現状ではアンインストールでのみ改善を確認しています。

f:id:kaorun55:20200914070207p:plain

下記のように、Unity Editor上ではモデルが見えますが、HoloLens 2の実機上ではモデルが見えなくなります。 f:id:kaorun55:20200914070413j:plain

f:id:kaorun55:20200914070421j:plain

Azure Remote Rendering Asset Tool

こちらは便利な改善で、モデルファイルのアップロードや変換、レンダリングをPCで行うことができるGUIアプリ(ARRT)が提供されています。

github.com

従来はモデルのアップロードと変換はサンプルに付属されているPower Shellスクリプトで行っていました。これがアプリのGUIからできるようになりました。

また、PC上でのレンダリング確認も行えるようになり、環境構築後の確認やデスクトップ上での動作閲覧などが手軽に行えるようになりました。

f:id:kaorun55:20200914070632p:plain

ARRでは10億ポリゴンまでは動作が確認されているようです。手元の環境で4GBほどのFBXはローカルの環境では開くことができなかったのですが、ARRTではレンダリングできた(ポリゴン数は1.3億になっていました)ので、大容量ファイルの閲覧にも利用が可能です。

大容量ファイルの変換時には最新のv1.3を使います。以前のバージョンでは変換中にタイムアウトする不具合があるそうです。参考までに上記4GB/1.3億ポリゴンのFBXは変換完了までに3時間かかりました。

Release v1.3.013500002-a156a395 · Azure/azure-remote-rendering-asset-tool · GitHub

Azure Remote RenderingのSharing

動作例がこちらです。

モデルの表示やToolsの操作がPhotonで同期されます。位置合わせはAzure Spatial Anchorsで行いますが、こちらのケースではうまくいかなかったので要調査です。

www.youtube.com

Azure Spatial Anchors

Azure PortalよりSpatial Anchorsを作成します。

f:id:kaorun55:20201003175714p:plain

UnityのAnchoringServiceよりそれぞれを設定します。

f:id:kaorun55:20201003175749p:plain

Photonの設定

UnityのAsset Storeから「PUN 2 - FREE」をダウンロード、インストールします。

f:id:kaorun55:20201003175253p:plain

Photonより「REALTIME」のアプリを作成します。

f:id:kaorun55:20201003175007p:plain

ここで取得したAppIdをセットアップ時に入力します。

f:id:kaorun55:20201003175439p:plain

あとはビルドするだけです。

なお、Photonのビルド時にエラーが発生する場合があるので、対処はこちら

blog.hololab.co.jp

「SHINAGAWAイノベーションフォーラムin五反田バレー」で登壇しました

2020/8/5に開催された「SHINAGAWAイノベーションフォーラムin五反田バレー」に登壇しました。

スライドはこちら。

speakerdeck.com

成長戦略とは。という感じではありますが、新しい事業において自社の成長は業界の成長と比例していると考えているので、ホロラボの成長から業界の成長が読み取れればいいのかなと思います。

新しい技術はお客さんも自分たちがやりたいことがたくさんあるので、それを実現するために受託開発が必要だと考えています。お客さんと新しい技術を学びながら会社や業界を成長させていくことが、新しい技術の溶け込ませ方だと考えています。

「Power Apps オンライン勉強会+座談会」に登壇しました

「Power Apps オンライン勉強会+座談会」に登壇しました。 powerapps.connpass.com

スライドとデモ動画は下記です。

speakerdeck.com

youtu.be

デモシナリオとPowerAppsを利用する理由

f:id:kaorun55:20200806160344p:plain

f:id:kaorun55:20200806160426p:plain

HoloLensでの点検支援とその記録というデモシナリオで、点検個所をHoloLensで表示しつつ写真で点検を記録しています。HoloLensでの点検個所はVuforia Area Targetを使用して自動で位置合わせができるようになっています。マーカーが不要で位置ずれも起きにくい(ずれても再度合わせるので、ずれが目立たない)ようになっています。

最近の仮説として、HoloLensのアプリと業務部分は切り離したほうが良さそうというのがあり、業務部分はPowerAppsで完結させ、HoloLensは業務支援部分だけをアプリ化しているイメージになります。

業務部分をPowerAppsで作成しているため、HoloLensだけでなく、スマートフォンでの閲覧も可能になっており、一つの構成で複数のデバイスのサポートが可能になります。

HoloLens Meetup vol.21より:ホロラボでのHoloLensアプリ開発技術(たるこす)

f:id:siho_o:20200731105610p:plain
WebRTCデモ動画画面

資料リンク

2020/07/29のHoloLens Meetup vol.21の弊社古田(a.k.a.たるこす)氏のセッションの資料が公開されました。 https://speakerdeck.com/tarukosu/app-development-at-hololab

speakerdeck.com

なお、資料内のリンクや動画などをまとめた記事はこちら。 https://tarukosu.hatenablog.com/entry/meetup21

ホロラボでの HoloLens アプリ開発技術 / App Development at HoloLab - Speaker Deck

資料チラ見せ

f:id:siho_o:20200731105746p:plain
社内便利ライブラリ:HoloLab ToolKit
f:id:siho_o:20200731105906p:plain
社内便利ライブラリ:HoloLab ToolKit
資料は下記の3つの分類で説明されています。 1.[Closed Source]…ホロラボ社内向け 2.[Open Source]…ソースコードを公開している技術・ライブラリ 3.[Experimental]…開発中・実験中の技術

どれも説明すると、1セッション分時間がかかるものをすべて合わせて30分という短尺でのご紹介でしたので、参加者からは「すごすぎて理解が追いつかない…」とコメントも。

私のイチオシ

f:id:siho_o:20200731105615j:plain
WebRTCとは?
中でも私のイチオシは、WebRTCを用いた技術です。 実は社内でも「WebRTC」というキーワードは耳にしていたのですが、今回のセッションで利用シーンをやっと理解! HoloLens 2 とWebRTCを使うと、iPadで空間に描画したものをHoloLens 2 でも共有できるんですね~。(TOP画像)

残念ながら、こちらはOpen Sourceではありませんが、学び始めるためのライブラリについてはスライド内でご説明しています。

先日公開した、HoloBrowser など、Open Source化している技術もご紹介していますので、ぜひスライドでゆっくり・じっくりご覧ください。

PowerAppsの信号(Signals)を試してみた

PowerAppsでは加速度や方位などデバイスの信号情報が取得できます。

docs.microsoft.com

PowerAppsで利用できる信号は次のようになっています。

信号 説明
Acceleration 加速度
Compass 方位
Location 緯度経度
Connection ネットワークの接続状況
App ActiveScreenプロパティにスクリーン情報

信号とプロパティの組み合わせで値を取得できます(App.ActiveScreenはスクリーン情報なので割愛します)。

f:id:kaorun55:20200726144848p:plain

Locationはスクリーンショットを使うときに表示されていると不便な場合があるので、トグルスイッチで切り替えられるようにしています。

f:id:kaorun55:20200726150548p:plain

様々な環境で実行してみる

iOS(iPhone 11 Pro)

すべての信号を取得できた。 f:id:kaorun55:20200726145617p:plain

Android(Xperia 1 ii)

方位以外のすべての信号を取得できた(方位は取得できないのか、権限の問題かは不明)。 f:id:kaorun55:20200726145401j:plain

PC(Razer Blade Salte)

緯度経度とネットワーク接続状況のみ取得できた。 f:id:kaorun55:20200726145330p:plain

HoloLens 2

緯度経度とネットワーク接続状況のみ取得できた。

HoloLens 2には加速度センサーが搭載されていますがEdge経由なのでアクセスができないように見えます。逆に緯度経度はGPSが搭載されていませんがWiFiで測位しているようです(OSの設定で位置情報を有効にしました)。 f:id:kaorun55:20200726145354j:plain