Fix bug with missing baked SDF data on save when asset data chunk memory was freed by GC

This commit is contained in:
Wojtek Figat
2024-08-10 20:45:59 +02:00
parent 7224494ce6
commit 97ab8940f0
3 changed files with 14 additions and 4 deletions

View File

@@ -682,7 +682,11 @@ bool Model::GenerateSDF(float resolutionScale, int32 lodIndex, bool cacheData, f
#if USE_EDITOR
// Set asset data
if (cacheData)
GetOrCreateChunk(15)->Data.Copy(sdfStream.GetHandle(), sdfStream.GetPosition());
{
auto chunk = GetOrCreateChunk(15);
chunk->Data.Copy(sdfStream.GetHandle(), sdfStream.GetPosition());
chunk->Flags |= FlaxChunkFlags::KeepInMemory; // Prevent GC-ing chunk data so it will be properly saved
}
#endif
return false;