スクリプトをはじめよう

Vircadiaのスクリプトの多くは舞台裏で実行されているため、実行されていることすらわかりません。ただし、高度な動作を作成する場合は、すべてが正しく機能することを確認するために、独自のスクリプト を作成する必要があります。

このページでは、使用するスクリプトの種類を確認し、独自の簡単なスクリプトの実行を開始するのに役立ちます。

VircadiaにおけるJavaScriptの基本

Vircadiaスクリプトは、Qtで提供されるJavaScriptエンジンで実行されます。

Note

Webページで実行される機能(Cookie、ローカルストレージ、データベースなど)は、Vircadiaなどの3D環境では機能しないことに注意してください。このため、Angular、React、Express、jQuery、VueなどのJavaScriptフレームワークは使用できません。

これらのVircadiaのAPIを最もよく使うことになるでしょう。

API

説明

エンティティ

権限がある限り、周囲のエンティティを操作できます。これは、エンティティを追加、削除、および編集できることを意味します。誰もがエンティティの get プロパティにアクセスでき、範囲、方向、衝突、またはレイトレースでエンティティを検索するために使用できます。

AvatarList

アバターマネージャ

私のアバター

Lets you get information on an Avatar, or manipulate your own client-only MyAvatar. The information here will be always the avatar information of the client running the script. AvatarList and AvatarManager are basically the same.

スクリプト

クライアントからスクリプトへのコールバックの接続、例えば時間に依存する機能(Script.update, Script.setTime, Script.setInterval など)、アセットへの相対パス接続(Script.relativePath)、他のスクリプトへの参照(Script.include)、あるいはスクリプトが停止したときに発生するイベント(Script.scriptEnding)を可能にします。

他にも多くのAPIがあります<https://apidocs.vircadia.dev>。Vircadiaでのスクリプト作成に慣れてきたら、それらを確実に利用することをお勧めします。

スクリプトの種類

スクリプトタイプ

説明

インターフェイススクリプト

Interface scripts run as long as you have Interface running. With these scripts, you can perform one-time creation tasks or modify the user experience with new menus, overlays, tweaks, plugins, and extensions.

割り当てクライアントスクリプト

Assignment client scripts coordinate the actions between entities and avatars in your domain. These scripts continue to run even when you shut down Interface.

アバタースクリプト

アバタースクリプト はアバター上で実行され、なびく髪などのユニークな効果を与えることができます。

クライアントエンティティスクリプト

クライアントエンティティスクリプト は、ドメイン内のユーザーに応答してローカルで実行される、エンティティに添付されたスクリプトです。これらのスクリプトを使用すると、ユーザーがエンティティに遭遇したときの挙動をカスタマイズすることができます。

サーバーエンティティスクリプト

サーバーエンティティスクリプト は、ユーザーがトリガーする必要のないエンティティに添付されたスクリプトです。これらのスクリプトは、ドメイン内のすべての人はその動作が把握できるようにエンティティを制御します。

スクリプトのアクセス許可

各ドメインの所有者は、 作成と編集の権限を制限 することができます。実行したいスクリプトがエンティティを追加または編集する権限を持っていない場合、オブジェクトが作成または変更される様子は表示されません。ただし、Running Scripts ウィンドウにそのスクリプトが表示されます。

スクリプトウィンドウの実行

[スクリプトの実行]ウィンドウを使用して、URLまたはディスクドライブからスクリプトをロード、実行、および停止できます。Vircadiaには、試してみるためのサンプルスクリプトも多数用意されています。

[Running Scripts]ウィンドウを開くには、[Edit]> [Running Scripts] に移動するか、キーボードの Ctrl + J を押します。

サンプルスクリプト

Vircadiaには、ユーザー体験を向上させ、独自のコンテンツを開発するためのツールを提供するために設計されたスクリプトのコレクションが付属しています。これらのスクリプトは、あなた自身のコーディング方法を学ぶためのリソースとしてご覧いただくことをお勧めします。

Note

スクリプトをロード(または実行)すると、動作確認や機能テストとして、その挙動を確認することができます。実際のコードを表示したい場合は、お好みのテキストエディターでファイルを開く必要があります。[Running Scripts]ウィンドウで、「Reveal Scripts」フォルダをクリックし、表示したいJavaScriptファイルをブラウズしてください。

利用可能なスクリプトは次のとおりです。

スクリプトフォルダ

説明

Android

これらのスクリプトは、Androidデバイスで実行するために作成されました。

開発者

これらのスクリプトは、内部使用とデバッグのために作成されましたが、上級開発者がコンテンツを作成する際に役立つと思われるため、公開しています。これらのスクリプトは「入門用」ではなく、動作やドキュメントを保証するものではありません。

モジュール

これらのスクリプトは Vircadia でのスクリプト作成を簡素化する外部ツールを作成する。例えば、AppUI モジュールはタブレットアプリの作成を支援し、Request モジュールは HTTP リクエストを操作します。

システム

これらのスクリプトはVircadiaの安定性と使いやすさに不可欠です。これらのスクリプトに変更を加えることは推奨されませんし、「管理者」権限が必要な場合もあり、簡単ではありません。

チュートリアル

これらのスクリプトは、Vircadiaでスクリプトを使ってできることの例を示しています。例えば、蝶々を作ったり、アバターを拍手させたり、アンビエントサウンドをあなたのドメインに追加したりすることができます。

スクリプトのロードと実行

スクリプトを実行するには:

  1. [スクリプトの実行]ウィンドウを開きます。

  2. クラウドでホストされているスクリプトの場合は、[URLから]をクリックします。スクリプトファイルのURLを入力し、[OK]をクリックします。

  3. ローカルコンピュータのスクリプトについては、[ディスクから]をクリックします。スクリプトファイルを参照し、[開く]をクリックします。

  4. サンプルスクリプトをロードするには、[スクリプトの実行]ウィンドウの下部にあるスクリプトを参照します。

スクリプトのリロードと停止

スクリプトをリロードまたは停止するには、[スクリプトの実行]ウィンドウを開き、次のいずれかを実行します。

  • 実行中のすべてのスクリプトを再ロードするには、[実行中のスクリプト]ウィンドウの上部にある[すべて再ロード]ボタンをクリックします。

  • 特定のスクリプトを再ロードするには、スクリプトの横にある円形の矢印をクリックします。

  • 実行中のすべてのスクリプトを停止するには、[実行中のスクリプト]ウィンドウの上部にある[すべて停止]ボタンをクリックします。

  • 特定のスクリプトを停止するには、スクリプトの横にある[X]をクリックします。

デフォルトのスクリプトにスクリプトを追加する

デフォルトのスクリプトにスクリプトを追加して、インターフェイスを起動するたびに実行することができます。

  • インターフェイスで、タブレットまたはHUDをプルアップし、[メニュー]>[編集]>[スクリプトの実行] に移動します。

  • 下部にある[RevealScriptsFolder]をクリックします。

  • ファイルエクスプローラウィンドウで、[defaultScripts.js]ファイルを開きます。

  • このファイルにあなたのスクリプトを追加して、他のデフォルトスクリプトと一緒に実行できるようにします。スクリプトのフォルダパスが正しいことを確認してください。

Note

[defaultScripts.js]ファイルは、インターフェイスを最新のリリースバージョンに更新するたびに更新されます。これは、ファイルに加えた変更がすべて上書きされることを意味します。これを回避するには、[ローダー]スクリプトを記述して実行し、起動時にスクリプトをロードします。

スクリプトコンソール

スクリプトコンソールを使用すると、Vircadiaで短いスクリプトスニペットをすばやくテストして実行し、それらがどのように機能するかを確認できます。コンソールを開くには、[開発者]メニューに移動し、[スクリプト]>[コンソール] に移動します。[開発者]メニューが表示されていない場合は、最初に[設定]メニューに移動し、[開発者]メニューをクリックします。

../_images/scripting-console.png

デバッグ画面

デバッグウィンドウには、実行中のスクリプトによって生成された出力が表示されます。これにより、スクリプトの動作を監視し、スクリプトが意図したとおりに実行されていることを確認できます。スクリプトが失敗した場合、デバッガーは何が問題だったかを特定し、エラーが発生した特定のコード行を示すのに役立ちます。デバッグウィンドウを開くには、[開発者]メニューに移動し、[スクリプト]> [スクリプトログ] (HMD対応)に移動します。開発者メニューが表示されていない場合は、最初に[設定]メニューに移動し、[開発者]メニューをクリックします。

../_images/debug-window.png

関連項目