Merge remote-tracking branch 'origin/master' into 1.6

# Conflicts:
#	Flax.flaxproj
#	Source/Editor/Content/Items/AssetItem.cs
This commit is contained in:
Wojtek Figat
2023-06-13 15:41:07 +02:00
19 changed files with 175 additions and 98 deletions

View File

@@ -102,6 +102,7 @@ Actor* PrefabManager::SpawnPrefab(Prefab* prefab, Actor* parent, Dictionary<Guid
CollectionPoolCache<ActorsCache::SceneObjectsListType>::ScopeCache sceneObjects = ActorsCache::SceneObjectsListCache.Get();
sceneObjects->Resize(objectsCount);
CollectionPoolCache<ISerializeModifier, Cache::ISerializeModifierClearCallback>::ScopeCache modifier = Cache::ISerializeModifier.Get();
modifier->EngineBuild = prefab->DataEngineBuild;
modifier->IdsMapping.EnsureCapacity(prefab->ObjectsIds.Count() * 4);
for (int32 i = 0; i < prefab->ObjectsIds.Count(); i++)
{

View File

@@ -204,7 +204,10 @@ void SceneObjectsFactory::Deserialize(Context& context, SceneObject* obj, ISeria
}
// Deserialize prefab data (recursive prefab loading to support nested prefabs)
const auto prevVersion = context.Modifier->EngineBuild;
context.Modifier->EngineBuild = prefab->DataEngineBuild;
Deserialize(context, obj, *(ISerializable::DeserializeStream*)prefabData);
context.Modifier->EngineBuild = prevVersion;
}
int32 instanceIndex;