In the world "AudioOrbs", the UI is not working
closed
MyroP
"AudioOrbs" by KilerBomb : https://vrchat.com/home/world/wrld_5edb4d7d-2400-49f8-bae1-a8eb48a258e2
We cannot interact with the setting panel, clicking on those buttons does nothing. It works fine on live.
UIs seem to work fine in any other worlds.
Edit : I decided to also check the logs, and noticed that some scripts are breaking, those errors do not seem to happen on live.
Photo Viewer
View photos in a modal
Log In
Phasedragon
updated the status to
closed
We've worked with the world creator to identify that the source of this issue is due to a change in Udon initialization order.
Udon initialization order has never been fully guaranteed, and depends on several external factors like Unity initialization order and hierarchy. This isn't a great situation to be in and we'd like to fix it at some point, but we'd prefer to fix it properly instead of just restoring it back to a previous unstable state.
We recognize that this has the potential to be a problematic change, but as of now we're not aware of any other world that it's affected. We've also been unable to reproduce it in our own test worlds, so we're not certain how large of an impact this will have, but we suspect it's minimal.
As a result, the solution for this particular world was to consult with the creator to help make their scripts more robust to different execution orders. See attached a coding pattern that can be used to do that.
For now, I'm going to close this task because we have a solution for AudioOrbs specifically. If this ends up affecting a significant number of worlds beyond just this one, then we can reconsider. In the meantime, this other issue is appropriate for discussion on this topic, and we'll try to get to it another time: https://feedback.vrchat.com/udon/p/1123-udon-objects-with-udon-children-initialize-late-despite-execution-order-ove
Photo Viewer
View photos in a modal
Kilerbomb
I found that this build altered the execution order of some scripts that didn't have a default execution order set, I've fixed it in my project and will push an update soon.
Kilerbomb
Update: While initially I thought I had found the culprit, it seems that was a bit of a red herring.
After going through every script causing issues and making sure execution orders were correct, the issue is still present. Did the classic "spread Debug.Log everywhere" method and what I've found is that despite using the [DefaultExecutionOrder()] attribute on ALL affected classes, the p-test build is not respecting these values whatsoever. Build+testing the exact same build on p-test and the live client results in very different execution orders.
I don't have more info than that currently, as I've been too busy IRL recently to test further. But I do believe there is a deeper problem with execution orders in p-test.
Kilerbomb
Zel
I was given a tip that it might be related to a different Udon quirk, and it turns out it was. The problem was related to this canny here:
After changing my hierarchy around, scripts are executing in the expected order. Still odd that it was working before the p-test update, but at least it is known behavior (just not known by me before this lol).
MyroP
The issue still happens on build 1517
White Lotuz
updated the status to
tracked
This post was marked as
needs more information
StormRel
updated the status to
tracked