@joseph yes, they are listed as overrides, but there’s more to the bug.
I think I have found the pattern of the bug:
- Activate parameter override (activate the bool) AND apply to prefab (just the bool for simplicity)
- Play → override is still active
- DeActivate the override WITHOUT applying to prefab
- Activate the override again WITHOUT applying to prefab
- Play → override becomes DeActivated and thus removes any values you’ve set.
This is also registered as a change on the instance, which is bad cause the user can accidentally apply completely wrong settings to the prefab.
See the GIF:
So for me to be able to actually add overrides to the instances of a prefab I need to mark that parameter as “overrideable” beforehand IN the prefab. That way it will keep its “overriden”-status, and thus not reset my override-values.
But if I for some reason would turn off the override, and later change my mind and turn it on again “manually” (ie. without reverting to the prefab default values), then it will completely ignore the override I have applied and just reset it back to “not overriden”-status - which also sets the initial parameter value back to 0f, regardless of what it was before. And this just makes it seem like the
ParameterOverride variables don’t work.
So in conclusion @joseph, I don’t know what’s causing the bug, but my guess is that it’s something in how the
CustomEditor-script for the
StudioEventEmitter draws and applies values to those
ParameterOverride variables. Those variables seem to be the only ones having this issue, cause neither the
OverrideAttenuation nor any of the variables in the
Advanced Controls-dropdown have this issue.
ParameterOverride variables don’t get the blue line at the left nor the bold text that let’s you know that you have made an override of that variable on that prefab instance (see picture below). Neither does the
OverrideAttenuation-variable get those, but that doesn’t seem to be a problem for that one - although you can’t right click on it and apply just that one override to the prefab, as opposed to applying ALL the overrides at once (which you may not want to do).
Picture of Prefab Instance variable overrides: