Docs about what happens if the same avatar has different physbones on PC & Android
RavenWorks
What happens if the Android version of an avatar has fewer physbones than the PC version? I suspect that physbone interactions can't
all
just be calculated locally, since for example, late joiners need to be able to see posed physbones.... Are they synced based on an index, or on the bone name, or what?Log In
xantoz・ザントス
I've tried before to get physbones to sync properly with the network id editor thing, but never succeeded.
Might of course also have been affected by things like VRCFury or Modular Avatar. But optimally there would be a way so that tools like that can still be used without losing the ability to sync physbones correctly (maybe it'd be easier to implement a VRCFury feature that removes PBs for Quest build or only adds the PC-only ones on PC without messing up the network IDs or something..)
Sacrion
xantoz・ザントス Are you sure you assigned the corresponding network IDs to each gameobjects? they must use the same ID both on PC and on Quest for the specific parts.
Also it wouldn't be that easy to just remove the Quest PhysBones and adding it with a PC ones where most avatar creators usually just toss in 50 or more PhysBone components, and hundreds and more PhysBone transforms on the avatar. Quest is very limited, you can't exceed 8 PB components and 64 PB transforms, so you have to do a manual work, because the system wouldn't know what PBs you would want to keep for the Quest version
Sacrion
They are synced by the Network ID (similarly when you want to sync objects between worlds cross-platform). As far as I know, as long as the PC and Quest version looks almost identical in the Hierarchy, the Phys bones will just sync properly, but otherwise, you want to open the Network ID editor, export your PC PhysBone IDs then import it onto your Quest version, then you can assign the corresponding PhysBones there.
I can also confirm PhysBones will stay synced even for late joiners, but I still curious about what happens if the PhysBones lengths are longer than the other (for example if a character's tail has 10 PhysBones on PC, but only 5 on Quest), then which bone would the system trying to grab? or what if there's multiple chains like hair (I know you could technically assign the PhysBone components for each hair chains, and it would sync just fine that way, but that would lead to too many PhysBone components)?
But yeah, some kind of documentation would be good, also most of the avatar creators aren't aware of this, I think 80%+ of the avatars has syncing issues cross-platform with the PhysBones