Programming in VRChat

VRChat でのプログラミングについて調べたことの書き溜め

PipelineManager

機能(推測)

  • 現状ではワールドおよびアバターの ID に関する表示・操作ができる。
  • Unity Version が表示されているので、作成操作した実際の版とサーバが期待する版の比較などができているのかも?

在り処

  • アバターの場合
    • VRC_AvatarDescriptor コンポーネントを追加すると PipelineManager も一緒に追加される。
  • ワールドの場合
    • VRC_SceneDescriptor コンポーネントを追加すると PipelineManager も一緒に追加される。
    • VRCWorld prefab にはあらかじめ VRC_SceneDescriptor と共にPipelineManager も含まれている

操作と動作

  • コンポーネントを追加すると Blueprint ID は空の状態
  • アップロードすると ID が付与され、表示される
  • TBD Attach と Detach 操作
    • たぶん Attach は既知の ID のものを上書きするための操作
    • たぶん Detach は次のアップロードで別の ID を新たに与える要求操作

Tips

  • Scene をコピーしてバリエーションを作ろうとしても PipelineManager が ID 値を保持しているので、アップロードしても別物にはならない。アップロード前に Detach ボタンを一度押しておくと、次のアップロードからは VRChat サーバー上で別物になる

憶測

  • この pipeline とは VRChat サーバに流し込む処理のことか?
    • Unity に BuildPipeline というのがあるのでそれに関連づいているのかも