Object toggle under Gesture layer will not appear on local mirror and camera
closed
X
XxJimmy122xX
My <fish>< exists but not in my own camera and mirror, left is camera and right is mirror.
The <fish>< do not show up in camera and mirror for the user themselves. But will appear on the camera and mirror of remote users.
The thing is that everything works fine back in some versions before. The avatar is built with 2019 SDK and haven't been updated in a long while. It works until one VRChat update came (not sure which one).
To have this problem, any objects toggled with animation under Gesture layer will not appear on local mirror and camera.
Log In
_
_tau_
closed
As discussed, this is behaving as documented. Object toggles must not be done in layers other than FX to sync them in local mirrors and cameras.
StormRel
tracked
X
XxJimmy122xX
With this marked as Tracked, I would also like to bring your attention to this in the SDK wiki about Playable Layers.
"FX is a special layer. On every other layer, you should not be using material animations, shader property animations, or blend shape animations, because they aren't copied to your mirror clone. Only transforms are.
However, in the FX layer, everything is copied over! In other words, everything that isn't a humanoid transform/muscle animation should go into the FX layer. This includes (but is not limited to) things like enabling/disabling GameObjects, components, material swaps, shader animations, particle system animating, etc."
The fix for this is that I have to make new layers on both FX and Gesture, one in FX for toggling the <fish>< and the other in Gesture to animate the fingers.
With the line "because they aren't copied to your mirror clone", can you confirm that this is intended and is actually a bug fix implanted lately that is breaking avatar that worked using this?
Also do notice that, it was working like that for years long until that one day...
_
_tau_
XxJimmy122xX: The documentation about the FX and gesture layer is correct as you cite it.
This is not new behaviour, and it working outside of that specification should not be relied on.
The issue you are describing specifically is potentially unrelated however - could you verify that it still occurs in the original configuration on the latest update, version 2024.1.1?
If it does, please post your avatar ID so we can reproduce it.
X
XxJimmy122xX
_tau_ Since I already updated my avatar to make it work again. I have uploaded a separated old version of it for your testing.
Old: avtr_54086392-2448-4a72-a087-07fb597241f5
New: avtr_97c76f55-ce00-4504-a977-dfaff05d6b68
You can also check out the new and fixed version to compare.
Please get back to me when testing is done so I will delete it.
_
_tau_
XxJimmy122xX: Yeah, that avatar is behaving exactly as the documentation describes - toggles on the Gesture layer are not being copied over. I don't see any particularly recent changes to this part of the code either, so if this has worked before it would have been undefined behaviour already.
Since the new one works as intended, I don't think there's more for us to do here? The docs are accurate to what is happening in the client now, and the behaviour of only copying the FX layer and humanoid transforms is an optimization that we will not change.
X
XxJimmy122xX
_tau_ Then I guess this optimization of only copying the FX only started working correctly some patches ago. Since I have had the <fish>< toggle in Gesture layer since the start of 2023 and it did work before. Also having that toggle in Gesture layer currently only impact local mirror and camera. Any remote user will see them in mirror and camera as normal.
Looking at the documentation, it does look like the situation currently is how it should be. I guess this can be marked as resolve if this is the case.
X
XxJimmy122xX
Can confirm this is not an issue that only happens to me since I also see this Reddit post describing the same thing.