When you edit a parameter on your avatar descriptor, Unity does not mark the scene as dirty. To save your work, you have to edit something else (to dirty the scene) and THEN save it.
This is probably because of the use of a
CustomEditor
that does not
EditorSceneManager.MarkSceneDirty
or
EditorUtility.SetDirty
when a value is changed.
It's really annoying because if I forget to mark the scene as dirty (ie. change a value in one of Unity's default components), all my changes aren't saved, even when you use the "Save" button because to Unity, there's
nothing
to save, even though there is.
---
If you don't know what I mean, open a scene with an avatar, change the eye, press Ctrl+S and reload it. DO NOT CHANGE ANY OTHER VALUE; not even a transform.
In fact, you don't even need to press Ctrl+S since Unity doesn't save anything because the scene isn't marked as dirty.