In my Unity project, I had an issue recently where a tool which autogenerated animation controller layers caused issues with existing layers because it was generating layers with Write Defaults set to OFF, but the existing layers were full of states where it was set to ON.
On talking with others, I gather that mixing these two settings in the same controller causes chaos.
But the thing is, if that were truly the case, the UI would reflect that. It would just be a single checkbox on the entire controller, and I wouldn't be able to set it differently on every single node. Yet I can, so there must be a use case for mixing them.
Unity defaults this checkbox to ON, suggesting that they recommend that.
VRChat, on the other hand, recommend setting it to OFF.
So I don't know who is right on this but it creates an annoying situation where if I want to follow VRChat's recommendations I have to manually uncheck a checkbox on every single animator node, which isn't great UX.
So what I'm wondering is, exactly what does this checkbox do that makes a mix of the two settings break stuff, while setting everything to OFF or everything to ON apparently works fine together. Does it exist solely to torment new developers who don't expect that the editor has extreme quirks?