VRChat

【VRChat】Manualでオブジェクト同期するやつ(ManualObjectSync)【Udon】

Manual ObjectSync は、より軽量な VRC Object Sync として置き換える事を目指した U# コンポーネントです。 VRC Object Sync コンポーネントはアタッチするだけでいい感じに同期してくれますが、内部的に ContinuousSync(連続同期) で通信しているうえ、不動(Sleep)状態だと同期も同じオブジェクトにある Udon ごと停止します。 Manual ObjectSync は名前の由来にもなっている ManualSync モードで同期するため、ManualSync 同期の他の Udon コンポーネントと共存可能です。 オブジェクトにアタッチするだけで Transform の位置、回転、スケールの変更が自動的に同期されるようになります。Transform の変更はオブジェクトのオーナーの元でチェックされ、Transform に変更があった時だけ非オーナーに同期が走るようになっています。もちろん Later-joiner にも同期します。 ピックアップオブジェクトに付ける場合、ピックアップ中はピックアップしているプレイヤーの手ボーンに追従する仕組みのため、VRC Object Sync のような位置ズレも起きません。 一緒にRigidbodyが付いている場合はKinematic、Gravityの同期的制御もできるようになっています(ただし、非Ownerは同期の都合上Kinematicが強制オンにされます)。 ※Rigidbody の Is Kinematic がオフでも同期しようとはしますが、スムージング機能はありません。常時動き続けるようなオブジェクトには VRC Object Sync の使用を検討してください。 Manual ObjectSync を補助するコンポーネントもいくつか用意しています。 詳しい使い方は以下ドキュメントを参照してください。 https://github.com/mimyquality/FukuroUdon/wiki/Manual-ObjectSync

導入手順

利用規約

更新履歴

【VRChat】Manualでオブジェクト同期するやつ(ManualObjectSync)【Udon】
【VRChat】Manualでオブジェクト同期するやつ(ManualObjectSync)【Udon】
【VRChat】Manualでオブジェクト同期するやつ(ManualObjectSync)【Udon】
Manual ObjectSync は、より軽量な VRC Object Sync として置き換える事を目指した U# コンポーネントです。 VRC Object Sync コンポーネントはアタッチするだけでいい感じに同期してくれますが、内部的に ContinuousSync(連続同期) で通信しているうえ、不動(Sleep)状態だと同期も同じオブジェクトにある Udon ごと停止します。 Manual ObjectSync は名前の由来にもなっている ManualSync モードで同期するため、ManualSync 同期の他の Udon コンポーネントと共存可能です。 オブジェクトにアタッチするだけで Transform の位置、回転、スケールの変更が自動的に同期されるようになります。Transform の変更はオブジェクトのオーナーの元でチェックされ、Transform に変更があった時だけ非オーナーに同期が走るようになっています。もちろん Later-joiner にも同期します。 ピックアップオブジェクトに付ける場合、ピックアップ中はピックアップしているプレイヤーの手ボーンに追従する仕組みのため、VRC Object Sync のような位置ズレも起きません。 一緒にRigidbodyが付いている場合はKinematic、Gravityの同期的制御もできるようになっています(ただし、非Ownerは同期の都合上Kinematicが強制オンにされます)。 ※Rigidbody の Is Kinematic がオフでも同期しようとはしますが、スムージング機能はありません。常時動き続けるようなオブジェクトには VRC Object Sync の使用を検討してください。 Manual ObjectSync を補助するコンポーネントもいくつか用意しています。 詳しい使い方は以下ドキュメントを参照してください。 https://github.com/mimyquality/FukuroUdon/wiki/Manual-ObjectSync