【VRChat】Manualでオブジェクト同期するやつ(ManualObjectSync)【Udon】
- 現行版(リンク)ダウンロード商品¥ 0
- 寄付用(兼旧式のDL用)ダウンロード商品¥ 500

VRC Object Syncコンポーネントはアタッチするだけでいい感じに同期してくれますが、ContinuousSyncのため、大量に設置すると通信量がパンクして同期に支障が出る事があります。また、ManualSyncモードのUdonスクリプトと相性が悪い事が知られています。 これはManualSyncなVRC Object Syncとして置き換える事を目指したU#スクリプトで、オブジェクトにアタッチするだけで自動的にTransformの位置、回転、スケールがOwnerに同期するようになります。 一緒にRigidbodyが付いている場合はKinematic、Gravityの同期的制御もできるようになっています(ただし、非Ownerは同期の都合上Kinematicが強制オンにされます)。 一緒にVRC Pickupが付いている場合は、ピックアップしているプレイヤーの持っている手の位置を基準にローカル計算で追従するため、VRC Object Syncと比べて最低限の通信量で、かつ滑らかに位置同期します。 ManualSync同期のため、一緒に他のManualSyncなUdonBehaviour、U#スクリプトをアタッチする事が可能です。 ※Rigidbody の Is Kinematic がオフでも同期しようとはしますが、スムージング機能はありません。常時動き続けるようなオブジェクトには VRC Object Sync の使用を検討してください。 詳しい使い方は以下ドキュメントを参照してください。 https://github.com/mimyquality/FukuroUdon/wiki/Manual-ObjectSync
導入手順
VCC2.1.0からのCommunity Repository機能の実装に伴い、BOOTHで配布していたUdonギミック群は、「Fukuro Udon」という名前のVPM形式での配布に一本化します。 VCC( https://vrchat.com/home/download )をインストール済みの場合、以下のいずれか一つの手順を行うことでVCCにMimyLabリポジトリーが登録され、VCC上からFukuro Udonの更新管理が出来るようになります。 - 「FukuroUdon.zip」に同梱の「MimyLab VPM Repository installer for VCC」ショートカットを実行 - https://vpm.mimylab.com/ へアクセスし、「Add to VCC」を実行 - VCCのウィンドウでSetting -> Packages -> Add Repositoryの順に開き、「 https://vpm.mimylab.com/index.json 」を追加 リポジトリーが登録できたら、VCCから任意のプロジェクトを選択し、「Manage Project」から「Manage Packages」画面を開きます。 Selected Repos一覧の「MimyLab」にチェックが入っている事を確認してください。 パッケージ一覧から「Fukuro Udon」の右にある「+」ボタンを押すか、「Installed Version」から直接バージョンを選ぶことで、プロジェクトにインポートされます。 リポジトリーを使わずに導入したい場合は、下記リンクからunitypackageファイル( com.mimylab.fukuroudon-*.*.*.unitypackage )をダウンロードして、Unityプロジェクトに直接インポートしてください。 https://github.com/mimyquality/FukuroUdon/releases
利用規約
Copyright (c) 2022 Mimy Quality Released under the MIT license https://opensource.org/licenses/mit-license.php
更新履歴
### 2023/4/8 - VCC2.1.0からのCommunity Repository機能に対応。 ### 2023/2/20 ver1.1.10 - 他人がピックアップした際にオブジェクトが一瞬跳ねる現象を低減しました。 ### 2023/2/7 ver1.1.9 - ver1.1.8において、later-joiner視点でjoin直後が非アクティブだと同期しなかったのを修正しました。 ### 2023/2/3 ver1.1.8 - 初回のOwner委譲時に、Transform値が全て0になるのを修正しました。 ### 2022/12/28 ver1.1.7 - Rotationの変動チェックがMove Check Spaceを無視していたのを修正しました。 ### 2022/11/4 ver1.1.6 - VRCPickupと併用した場合で、ピックアップしたまま退室されると他の人が掴み直せなくなる不具合に対応しました。 ### 2022/10/26 ver1.1.5 - ピックアップを持ち替えた時に、他人からは持ち替えてないように見える可能性があるのを修正しました。 ### 2022/10/11 ver1.1.4 - 内部のリファクタリングをしました。 ### 2022/9/29 ver 1.1.3 - Hierarchyに置いた時、既にSceneDescriptorがある場合は、RespawnHightYの初期値をSceneDescriptorに合わせるようになりました - 内部処理を見直し、ちょっとだけ軽量化しました ### 2022/9/27 ver1.1.2 - ピックアップできなくなる不具合の修正が完全でなかったのを修正しました。 - 全てのManualObjectSyncが同じフレームでTransformの変動チェックしていたのを、なるべく分散するようにしました。 ### 2022/9/26 ver1.1.1 - Transformの変動チェックを自身のローカル空間で評価するか、ワールド空間で評価するかを選べるようになりました。親オブジェクトを動かした際の挙動が変化します。スケールはローカル空間固定です。 - 落下時リスポーン機能を追加しました。Scene DescriptorのSpawn Hight Yの値は影響しないので、個別に指定する必要があります。 - ピックアップしたまま退室した場合、ピックアップできなくなる不具合を修正しました。 ### 2022/9/24 ver1.0.0 - リリース