Rewrite changed model rendering code, and change how model skins are handled

This commit is contained in:
Ricardo Luís Vaz Silva 2023-05-27 18:40:04 -03:00 committed by Rachael Alexanderson
commit 61d68eb2d6
5 changed files with 144 additions and 92 deletions

View file

@ -1324,13 +1324,22 @@ bool AActor::Massacre ()
//
//----------------------------------------------------------------------------
FSerializer &Serialize(FSerializer &arc, const char *key, ModelOverride &sid, ModelOverride *def)
{
arc.BeginObject(key);
arc("modelID", sid.modelID);
arc("surfaceSkinIDs", sid.surfaceSkinIDs);
arc.EndObject();
return arc;
}
void DActorModelData::Serialize(FSerializer& arc)
{
Super::Serialize(arc);
arc("modelDef", modelDef)
("modelIDs", modelIDs)
("models", models)
("skinIDs", skinIDs)
("surfaceSkinIDs", surfaceSkinIDs)
//("surfaceSkinIDs", surfaceSkinIDs)
("animationIDs", animationIDs)
("modelFrameGenerators", modelFrameGenerators)
("hasModel", hasModel);
@ -1338,10 +1347,10 @@ void DActorModelData::Serialize(FSerializer& arc)
void DActorModelData::OnDestroy()
{
modelIDs.Reset();
models.Reset();
modelFrameGenerators.Reset();
skinIDs.Reset();
surfaceSkinIDs.Reset();
//surfaceSkinIDs.Reset();
animationIDs.Reset();
}