Azure Digital Twins 3D Scenes Studio (プレビュー) はイマーシブな 3D 環境です。エンド ユーザーは、3D 資産の視覚的なコンテキストを使用して運用データを監視、診断、調査できます。 3D Scenes Studio を使用すると、3D の専門知識を必要とせずに、Azure Digital Twins データを利用した視覚化で既存の 3D モデルを強化できます。 視覚化は、Web ブラウザーから簡単に使用できます。
デジタル ツイン グラフとキュレーションされた 3D モデルを使用すると、主題の専門家はスタジオのローコード ビルダーを利用して 3D 要素をデジタル ツインにマップし、ビジネス環境の 3D 視覚化のための UI の対話機能とビジネス ロジックを定義できます。 3D シーンは、ホストされている 3D Scenes Studio または埋め込み可能な 3D ビューアー コンポーネントを利用するカスタム アプリケーションで使用できます。
この記事では、3D Scenes Studio とその主な機能の概要について説明します。 各機能の使用方法に関する包括的な詳細な手順については、「 3D Scenes Studio を使用する (プレビュー)」を参照してください。
Studio の概要
3D Scenes Studio での作業は、シーンの概念を中心に構築 されています。 シーンは単一のビジネス環境のビューであり、3D コンテンツ、カスタム ビジネス ロジック、および Azure Digital Twins インスタンスへの参照で構成されます。 1 つのデジタル ツイン インスタンスに対して複数のシーンを作成できます。
シーンは、3D Scenes Studio 内の ビルダー で構成されます。 その後、スタジオの 組み込みビュー エクスペリエンスで完成したシーンを表示したり、 カスタム Web アプリケーションに埋め込んだりすることができます。 組み込みのビューアーを拡張したり、3D シーン ファイルと Azure Digital Twins グラフにアクセスする独自のビューアーを作成したりできます。
環境とストレージ
Azure リソースの観点からは、 3D Scenes Studio 環境 は 、Azure Digital Twins インスタンス と Azure ストレージ コンテナーの一意のペアリングから形成されます。 これらの Azure リソースを個別に作成し、3D Scenes Studio を両方に接続して、一意の 3D Scenes Studio 環境を設定します。 その後、この環境でシーンの構築を開始できます。
各 3D シーンは、ストレージ コンテナー内に格納される 2 つのファイルに依存します。
- 視覚化のシナリオ データとメッシュを含む 3D ファイル。 このファイルは、3D Scenes Studio にインポートします。
- 3D Scenes Studio 環境を作成するときに自動的に作成される構成ファイル。 このファイルには、3D コンテンツと Azure Digital Twins の間のマッピング定義と、すべてのユーザー定義ビジネス ロジックが含まれています。
注
Azure アカウントでストレージ コンテナーを管理するため、保存されているシーン ファイルを直接変更できます。 ただし、構成ファイルを手動で編集 することはお勧めしません 。これにより、ビューアー エクスペリエンスで正しく処理されない可能性のあるファイルに不整合が発生するリスクがあるためです。
Azure Digital Twins インスタンスと Azure ストレージ コンテナーを使用して 3D Scenes Studio 環境を作成したら、これらのリソースを別のインスタンスまたはコンテナーに切り替えて環境を変更できます。 これらのアクションの結果を次に示します。
- 新しい Azure Digital Twins インスタンスに切り替えると、シーンの基になるデジタル ツイン データが切り替わります。 シーン内のデジタル ツイン参照が壊れる可能性があるため、これは お勧めしません。
- 新しいストレージ コンテナーに切り替えることは、新しい構成ファイルに切り替えることを意味します。これにより、スタジオに表示されているシーンのセットが変更されます。
シーンを他のユーザーと共有するには、受信者は、少なくとも、Azure Digital Twins インスタンスと環境内のストレージ コンテナーの両方に対する リーダー レベルのアクセス権と、これらのリソースに関する URL 情報が必要になります。 環境を他のユーザーと共有する方法の詳細については、「環境 を共有する」を参照してください。
セットアップ
3D Scenes Studio を使用するには、次の必要なリソースが必要です。
Azure ストレージ アカウントとストレージ アカウント内のプライベート コンテナー
3D シーンを 表示 するには、少なくとも これらのストレージ リソースへの Storage Blob Data Reader アクセス権が必要です。 3D シーンを 構築 するには、 ストレージ BLOB データ共同作成者 または ストレージ BLOB データ所有者 アクセス権が必要です。
必要なロールは、ストレージ アカウント レベルまたはコンテナー レベルで付与できます。 Azure ストレージのアクセス許可の詳細については、「Azure ロールの割り当て」を参照してください。
また、3D Scenes Studio がストレージ コンテナーにアクセスできるように、ストレージ アカウントの クロスオリジン リソース共有 (CORS) を構成する必要があります。 CORS 設定の詳細については、「 3D Scenes Studio の使用 (プレビュー)」を参照してください。
その後、3D Scenes Studio のリンクから 3D Scenes Studio にアクセスできます。
その後、3D 環境をストレージ リソースにリンクし、最初のシーンを構成します。 これらのアクションを実行する方法の詳細については、「 3D Scenes Studio 環境を初期化 する」および「 シーンの作成、編集、表示」を参照してください。
開発者
3D Scenes Studio の ビルダー は、シーンを構成するための主要なインターフェイスです。 これは、コードが少ない視覚的なエクスペリエンスです。
ビルダーの外観を次に示します。
ビルダーでは、シーンの 要素 と 動作を 作成します。 以降のセクションでは、これらの機能について詳しく説明します。
元素
要素 は、デジタル ツインにリンクされたユーザー定義の 3D メッシュであり、視覚化部分を関連するツイン データにマッピングします。
ビルダーで要素を作成するときは、次のコンポーネントを定義します。
- プライマリ ツイン: 各要素は、対応するプライマリ デジタル ツインに接続されます。 要素を Azure Digital Twins インスタンス内のツインに接続することで、要素が 3D 視覚化内でツインとそのデータを表すことができるようにします。
-
名前: 各要素には名前が必要です。 それをプライマリ・ツインの
$dtIdと一致させると良いかもしれません。 - メッシュ: この要素を表す 3D モデルのコンポーネントを識別します。
- ビヘイビアー: ビヘイビアーは、 視覚エフェクトに要素がどのように表示されるかを記述します。 この要素には、ここで動作を割り当てることができます。
- その他のツイン: 必要に応じて、要素のセカンダリ デジタル ツイン データ ソースを追加できます。 プライマリツイン以外のデータを持つ追加のツインを、動作で活用したい場合にのみ、他のツインを追加する必要があります。 別のツインを構成すると、その要素の動作を定義するときに、そのツインのプロパティを使用できるようになります。
動作
動作は、 デジタル ツイン データを使用してシーン内のビジュアルを駆動するビジネス ロジック ルールです。
要素の動作を作成するときは、次のコンポーネントを定義します。
- 要素: ビヘイビアーは、視覚化内の各 要素 に適用されるビジュアルを記述します。 この動作が適用される要素を選択できます。
- ツイン: この動作で使用できるデータを持つツインのセットを特定します。 これには、対象となる要素のプライマリ ツインと、その他のツインが含まれます。
- ビジュアル ルール: ビジュアル ルールは、要素の正常性または状態を示すように構成できる要素のデータ ドリブン オーバーレイです。
- ウィジェット: ウィジェットは、動作が表すシナリオの診断と調査に役立つ追加データを提供するデータドリブン ビジュアルです。 ウィジェットを構成すると、特定の条件がアクティブな場合に適切なデータを確実に検出できるようになります。
また、シーンに レイヤーを 作成して、動作を整理することもできます。 レイヤーはビヘイビアーでタグのような働きをするので、一緒に表示する必要があるビヘイビアーを定義し、さまざまなロールやタスク用にシーンのカスタム ビューを作成できます。
[ビューアー]
3D Scenes Studio には、エンド ユーザー (オペレーターなど) が 3D シーンの探索に使用できる ビューアーも含まれています。
ビューアーの外観を次に示します。
[要素] リストを使用してシーン内のすべての要素とアクティブな条件を調べるか、視覚エフェクト内の要素を直接クリックして詳細を調べることができます。
埋め込み可能なビューアー コンポーネント
3D Scenes Studio は、追加の表示ニーズをサポートするために拡張可能です。 ビューアー コンポーネントはカスタム アプリケーションに埋め込み、サード パーティのコンポーネントと組み合わせて使用できます。
独立したアプリケーションでの埋め込みビューアーの例を次に示します。
3D 視覚化コンポーネント ライブラリは、GitHub の iot-cardboard-js リポジトリで入手できます。 このライブラリは、モノのインターネット (IoT) Web エクスペリエンスを作成するためのオープン ソースの React コンポーネント ライブラリです。
ライブラリを使用して 3D エクスペリエンスをカスタム アプリケーションに埋め込む方法については、リポジトリの Wiki の「3D シーンの埋め込み」を参照してください。 ライブラリ用の Create React App テンプレートをデプロイする CRA IoT Cardboard サンプルを使用して、埋め込みビューアーでカスタム アプリの構築を開始することもできます。
制限とパフォーマンス
3D Scenes Studio を使用する場合は、次の制限を超えないようにすることをお勧めします。 これらの推奨される制限を超えると、パフォーマンスが低下したり、意図しないアプリケーションの動作が発生したりする可能性があります。
| 能力 | 推奨される制限 |
|---|---|
| リンクされたツインの数 (要素上のすべての一意のプライマリ ツインとセカンダリ ツインを含む) | 制限はありませんが、ツインの数が増えるにつれてパフォーマンスへの影響を考慮してください。 詳細については、以下の 「リフレッシュ レートとパフォーマンス 」を参照してください。 |
| 3D ファイルのサイズ | 100 MB |
これらの制限は、3D Scenes Studio が標準の Azure Digital Twins API を利用するため、公開されている API レート制限の対象となるため、推奨されます。 シーンにリンクされているデジタル ツインの数が増えると、通常のデータ更新時にシーンに取り込まれるデータの量も増えます (リフレッシュ レートの詳細については 、このセクションの次のパート を参照してください)。 これは、これらの追加の API 呼び出しが課金メーターと操作のスループットに反映されることを意味します。
リフレッシュ レートとパフォーマンス
3D シーン ビューアーの既定のリフレッシュ レートのベースラインは 10 秒で、ツインあたり 5 分の 1 の割合で増加します。 たとえば、10 ツインのリフレッシュ レートは 10 秒 (10 ツイン * 0.5 秒 = 5 秒)、30 ツインのリフレッシュ レートは 15 秒 (30 秒 * 0.5 秒 = 15 秒) です。 これは、可能な最小リフレッシュ レートです。
最小リフレッシュ レートを手動で遅くして、データをプルする頻度を正確に制御できます。 ビューアーの最小リフレッシュ レートを 10 秒から 1 時間の任意の場所に構成できます。 ビューアーは、設定した最小リフレッシュ レートを下回ることはありません。 ただし、ビューアーは、パフォーマンスを向上させるために、ツインの数が増えるにつれて 実際 のリフレッシュ レートを上げる場合があります。
ビューアーの最小リフレッシュ レートを構成する方法については、「最小リフレッシュ レートの 構成」を参照してください。
次のステップ
「3D Scenes Studio の使用を開始する」のサンプル シナリオで 3D Scenes Studio を試してみましょう。
または、「 3D Scenes Studio を使用する」でスタジオの完全な機能セットを使用する方法について説明します。