MRが楽しい

MRやVRについて学習したことを書き残す

Meshの環境作成チュートリアルMesh 201を試す その3(ビジュアルスクリプトを使ってHTMLコンテンツを読み込む)

本日はMicrosoftMeshの小ネタ枠です。
Meshの環境作成チュートリアルMesh 201を試した内容を記事にします。
今回はビジュアルスクリプトを使ってHTMLコンテンツを読み込む手順です。

前回記事

以下の前回記事の続きです。
bluebirdofoz.hatenablog.com

ビジュアルスクリプトを使ってHTMLコンテンツを読み込む

2 - LocalWebslateオブジェクト配下のLoadButtonオブジェクトを選択します。
本オブジェクトにはScript Machineコンポーネントが既に設定されています。

Script Machineコンポーネントの[Edit Graph]ボタンをクリックして[Script Graph]画面を開きます。

Is Selected Locallyノードはボタンを押下した参加者にのみ通知を行います。
またOn State Changeノードに接続することで押下状態が変化したタイミングのみ通知を通しています。

もしイベント内の全ての参加者に通知を行いたい場合はIs Selectedノードを利用する必要があります。

HTMLページを読み込んで表示する

ボタンを押下したタイミングでアセットデータをWebSlateに読み込む処理を追加します。
用意されているGet Component In ChildrenノードにWebSlateFramedオブジェクトをドラッグして参照を設定します。

Get Component In Childrenノードは指定のオブジェクトの子オブジェクトから指定のコンポーネントを取得します。
今回はWebSlateFramedオブジェクト直下のWebSlateコンポーネントに設定されているWebSlateコンポーネントの参照が取得されます。

Get Component In Childrenノードの出力ポートをクリックドラッグしてNodeメニューを表示し、Web Slate: Load HTM Content(Html Asset)ノードを選択して追加します。

追加したLoad HTM Contentノードのコンポーネントの入力ポートとGet Component In Childrenノードを接続します。
これでGet Component In Childrenノードで取得したWebSlateコンポーネントの参照をLoad HTM Contentノードに引き渡せます。

次にWebSlateにアセットデータを引き渡します。
用意されているGet VariableノードにはHTMLアセットの参照が設定されているので、本ノードをLoad HTM Contentノードに接続するだけです。

これでボタン押下時に用意されたHTMLアセットがWebSlateに読み込まれるようになりました。

動作テストを行う

シーンを再生して動作を確認します。

Loadボタンをクリックすると、WebSlateオブジェクトに表示されるページが変化すれば成功です。

次回はイベント内の全ての参加者に共有でWebSlateを変化する手順です。