デ ジ タ ル 新 事 業 創 造 係 M R 班 班 長 M i x e d R e a l i t y ア プ リ ケ ー シ ョ ン 企 画 ・ 導 入 ・ 開 発 な ど を 担 当 神 戸 デ ジ タ ル ・ ラ ボ 入 社 ( 2 0 1 5 ) I o T / M R な ど の 新 規 事 業 担 当 ( 2 0 1 6 - 2 0 1 8 ) Microsoft Mixed Reality パートナープログラム M R P P 認 定 ( 2 0 1 8 / 0 7 ) M i x e d R e a l i t y 専 任 ( 2 0 1 8 - 現 在 ) コ ミ ュ ニ テ ィ 運 営 A z u r e T e c h L a b . ( 2 0 1 9 - ) A R K O B E ( 2 0 1 9 - )
( 端末のスペックに依存する ) HoloLens 2 の場合 Snapdragon 850 ( SoC ) に含まれる Adreno 630 ( GPU ) で処理 Azure VM 上の ハイエンドな GPU で処理 レンダリング結果をエッジ端末にストリーム ① ③ ② ① セッションリクエスト ( 初回は、Azure VM 起動 ) ② 対象の3DCGをクラウドリソースにてレンダリング処理 ③ レンダリング結果を エッジ端末 にストリーム 最大 十数万ポリゴン!? 最大 数億ポリゴン!? A z u r e R e m o t e R e n d e r i n g 概 要 ※ 2020年4月7日に Public Preview としてリリース
( 端末のスペックに依存する ) HoloLens 2 の場合 Snapdragon 850 ( SoC ) に含まれる Adreno 630 ( GPU ) で処理 Azure VM 上の ハイエンドな GPU で処理 レンダリング結果をエッジ端末にストリーム ① ③ ② ① セッションリクエスト ( 初回は、Azure VM 起動 ) ② 対象の3DCGをクラウドリソースにてレンダリング処理 ③ レンダリング結果を エッジ端末 にストリーム 最大 十数万ポリゴン!? 最大 数億ポリゴン!? A z u r e R e m o t e R e n d e r i n g 概 要
( 端末のスペックに依存する ) HoloLens 2 の場合 Snapdragon 850 ( SoC ) に含まれる Adreno 630 ( GPU ) で処理 Azure VM 上の ハイエンドな GPU で処理 レンダリング結果をエッジ端末にストリーム ① ③ ② ① セッションリクエスト ( 初回は、Azure VM 起動 ) ② 対象の3DCGをクラウドリソースにてレンダリング処理 ③ レンダリング結果を エッジ端末 にストリーム 最大 十数万ポリゴン!? 最大 数億ポリゴン!? A z u r e R e m o t e R e n d e r i n g 概 要
e R e m o t e R e n d e r i n g 活 用 シ ナ リ オ https://azure.microsoft.com/en-us/services/remote-rendering/ 想定される活用シナリオ ・ 工業プラントなどの建築データのデジタルツイン作成 ・ 高精度の3DCG設計レビュー (トラックエンジン など) ・ 医療分野での手術前レビュー ( 患者臓器データ など ) etc ... 複雑かつ、高解像度の3Dデータを処理する場面
e R e n d e r i n g レ ン ダ リ ン グ 処 理 の 特 徴 ( 2 つ ) 1. Hybrid rendering 2. Multi-GPU rendering ✅ ク ラ ウ ド と エ ッ ジ で レ ン ダ リ ン グ を 両 立 す る こ と が 可 能 ✅ R e m o t e R e n d e r i n g 専 用 の U I フ レ ー ム ワ ー ク は 存 在 し な い M R T K ( M i x e d R e a l i t y T o o l k i t ) 等 で 自 由 に U I を カ ス タ マ イ ズ 可 能 ✅ レ ン ダ リ ン グ 処 理 を 複 数 の G P U イ ン ス タ ン ス に 分 散 可 能 ✅ 処 理 結 果 を マ ー ジ し 、 1 つ に 統 合 す る こ と が 可 能 + 軽 量 な 3 D ( U I 領 域 ) 大 き な 3 D C G
g h t B r e a k d o w n https://docs.microsoft.com/en-us/azure/remote-rendering/overview/about#high-level-architecture Azure Remote Rendering は ARR SDK を介して実行されます。 Azure VM 起動タイミング Remote Rendering 初回リクエスト時 VM起動には、2~3分かかるので注意!
g h t B r e a k d o w n https://docs.microsoft.com/en-us/azure/remote-rendering/overview/about#high-level-architecture クライアント側 サーバー側 クライアント側 サーバー側 クライアント側 独自コード : ユーザー入力処理、シーングラフ更新 ARRコード : シーングラフ更新、予想される頭部姿勢を サーバーに送信 1. 利用可能なGPUにレンダリングを分散 2. 複数GPUの処理結果を統合 3. 処理結果をエンコードして、ストリーム 独自コード : ローカルコンテンツのレンダリング ARRコード : ストリームデータとローカルコンテンツの マージ処理を行う (存在する場合) レンダリング要求から処理結果を受け取るプロセス
g h t B r e a k d o w n https://docs.microsoft.com/en-us/azure/remote-rendering/overview/about#high-level-architecture Azure Remote Rendering は ユーザーの視点が動くたびにレンダリング処理を実行します。 注意すべきポイント レンダリング処理を要求、実行を行い、 エッジ側で結果を受け取るまでに ネットワークの待ち時間が発生 動作の激しい動きをすると、 3DCGがブレるので注意が必要
r e - r e m o t e - r e n d e r i n g https://github.com/Azure/azure-remote-rendering/tree/master/Unity/AzureRemoteRenderingShowcase ソースコードは、GitHub 上に公開されています。