VRChat 非公式日本語ドキュメント

画像読み込み (Image Loading)

画像読み込み機能を使うと、インターネット上の画像をVRChatワールド内に表示できます。ユーザーがワールドを訪れると、インターネットから画像がダウンロードされ、マテリアルのテクスチャとして使用されます。画像読み込みの活用例をいくつか紹介します。

SDKには使いやすい ImageDownload スクリプトが同梱されています。また、新しい VRCImageDownloader オブジェクトを使用して独自のスクリプトを作成することも可能です。

tip

すぐに使い始めるには、画像ローダーのサンプルをご覧ください。

始める前に

Image Loaderには、知っておくべきいくつかの制限とパラメータがあります。

また、許可されているドメインは特定のドメインのみです。リストにないドメインの場合、ユーザー設定で Allow Untrusted URLs が有効になっていない限り、画像はダウンロードされません。

メモリ管理

ダウンロードした画像は大量のメモリを消費することがあります。画像の使用が終わったら、Udonを使って破棄することでメモリを解放し、他の用途に利用できるようにしてください。

例えば、新しい画像をダウンロードして、以前にダウンロードした別の画像と置き換えたい場合は、以下に説明する Dispose メソッドを使用して、古い画像をメモリから削除してください。これを行わずに新しい画像のダウンロードを続けると、ワールドの訪問者が長時間滞在した際にメモリ不足が発生し、クラッシュする可能性があります!

UdonGraph ノード

VRCImageDownloader

VRCImageDownloader のコンストラクタを使用して画像ダウンローダーを作成します。これにより、実行中にインターネットから画像をダウンロードできるようになります。

DownloadImage

画像をダウンロードし、成功または失敗を示すイベントを呼び出します(以下の「イベント」を参照)。 ダウンロードの進行状況を追跡するために使用できる IVRCImageDownload を返します。

Dispose

VRCImageDownloader をクリーンアップします。ダウンロードしたテクスチャをメモリから解放します。 VRCImageDownloader に対して Dispose を呼び出すと、そのオブジェクトは無効化され、新しい画像のダウンロードには使用できなくなります。

破棄およびガベージコレクションに関する注記:

TextureInfo

ダウンロードしたテクスチャに適用する設定を含みます。

IVRCImageDownload

ダウンロードした画像に関する情報を含みます。VRCImageDownloaderDownloadImage 関数、OnImageLoadSuccess、および OnImageLoadError によって返されます。 これらのフィールドの多くは、ダウンロードが完了または失敗するまで無効であることに注意してください。

VRChat は、ダウンロードされた画像の texture format を自動的に選択します。

Dispose

IVRCImageDownload をクリーンアップします。ダウンロードしたテクスチャをアンロードし、使用していたメモリを解放します。 VRCImageDownloader の Dispose メソッドとは異なり、このメソッドは個別のダウンロードとその関連テクスチャのみを破棄し、他のダウンロードやそのテクスチャには影響を与えません。 IVRCImageDownload を破棄すると、その StateUnloaded に変更されます。

VRCImageDownloadState

IVRCImageDownload における画像ダウンロードの状態を示します。

VRCImageDownloadError

画像ダウンロードが失敗すると、OnImageLoadError が呼び出されます。IVRCImageDownloadError フィールドには、以下のいずれかのエラー状態が含まれます。

イベント

最終更新: