A licensee was trying to extend the FSkelMeshSection, FSkelMeshRenderSection and USkeletalMesh serialisers with their licensee version number and found that the FSkeletalMeshRenderData::Cache function didn't store/restore those version numbers (nor the custom versions, which they also tried).

It is related to this: [Link Removed]

The licensee followed up with this:

> So for my specific use I'm changing the following structures:
> FArchive& operator<<(FArchive& Ar, FSkelMeshSection& S)
> FArchive& operator<<(FArchive& Ar, FSkelMeshRenderSection& S)
> void USkeletalMesh::Serialize( FArchive& Ar )
> Originally I tried to update these with my new members using a new FCustomVersionRegistration class. However, I found that if we didn't already enroll in this originally, on load, it would default to whatever was the current version on the current build.

The versions in the archive default to the current build's versions unless they're reset.

Steps to Reproduce


Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-161302 in the post.

Login to Vote

ComponentUE - Anim - Rigging
Target Fix5.3
CreatedAug 18, 2022
ResolvedApr 3, 2024
UpdatedApr 3, 2024