USLOG Package Manager

ストア / World Sync / ドキュメント / 制作者向けガイド

🌐 World Sync とは

World Sync の目的・できること・できないことをまとめた入門記事です

カテゴリ
はじめに
対象
ワールド制作者アバター制作者配信・運営者
難易度
初級
パッケージ
coreworldsavatarsCompanion
対応バージョン
v0.2.0
公開範囲
全体公開
最終更新
2026/11/1

概要

VRChat では、同じワールドでもインスタンスが異なるとプレイヤー同士の動きや Udon の同期変数は共有されません。World Sync は、配信元のインスタンスの状態を 映像(データを画像エンコードしたフレーム) として送り出し、受信側のインスタンスで動画プレイヤーから読み取って復元することで、複数のインスタンスで同じコンテンツを体験できるようにするためのVRChat用Unityアセット、およびアプリケーションを含めて、システム全般です。

リアルタイムでインスタンスを同期するだけでなく、エンコードした映像を記録して編集したり、プラットフォームを超えて同期を行ったり、後からアーカイブ公開して追体験を行えるようにしたりなど、応用して活用することもできます。

できること

機能内容主なコンポーネント
ボーン同期Hips の位置と、体 22 本・指 30 本の合計 52 本のボーン回転を同期しますPlayerBoneSync
ワールド変数同期bool / int / float / Vector / Quaternion / Color / int[] などの Udon 変数を同期しますWorldSyncBehaviour と [WorldSynced]
表情同期Viseme・ジェスチャー・フェイストラッキング値・任意の Animator パラメータを同期しますExpressionActorDecoder と World Sync Companion
アバター割り当てワールド内のアバター(人形)と演者の対応をスロット単位で切り替えますWorldSyncAvatarManager

できないこと・制約

  • VRChat の Playable Layers をワールドから直接読むことはできません(Bake 済みのパラメータとコントローラーで再現します)
  • /tracking/eye/* や /tracking/trackers/* などの OSC トラッキング生データは直接取り込みません(アバターパラメータに落ちている値は同期できます)
  • リアルタイム同期は、映像配信の経路を通るため、ストリーム方法により数百ミリ秒〜数秒の遅延が発生します
  • 受信側のワールドで動画プレイヤーが再生できる環境が必要です
  • アバターを動かすためには、アバターのデータをワールドに組み込んでアップロードする必要があります

パッケージ構成

パッケージ用途
tech.uslog.world-sync.coreSDK に依存しない共通データモデルとライセンス確認
tech.uslog.world-sync.worldsワールド側の Udon コンポーネント・Editor ツール・Shader
tech.uslog.world-sync.avatarsアバター側の Descriptor と Companion Manifest Baker
tech.uslog.world-sync.standaloneVRChat 以外の Unity アプリで受信するためのパッケージ

このほかに、表情データを送受信するデスクトップアプリ World Sync Companion があります。

関連記事