The common code which writes out attribute data was seemingly not performing the right sequence of calls for the UsdUtilsSparseValueWriter to actually write sparse data. See PR for a test file and .usda files produced with 4.1 and now with this change applied. Pull Request: https://projects.blender.org/blender/blender/pulls/126113