It seems that at some point, FGLInterface::StartSerialize was added to GZDoom's snapshot serializer. No equivalent Software function was added, and thus the serialization screws up between renderers due to a mismatch of three integers.
An equivalent serializer in FRenderer for those 3 values (using a dummy var) should fix it.
Edit: Actually, an equivalent set of variables would be needed and properly initialized so the GL renderer still has something to use on deserialization.
Software/GL serialization mismatch
Moderator: Graf Zahl
-
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
Re: Software/GL serialization mismatch
Yes, that's a leftover from SVN's bad merging capabilities when I tried to keep GL related changes out of the playsim code as much as possible. These days with GIT that shouldn't be an issue anymore, I just forgot about this thing.
-
- Posts: 63
- Joined: Fri Mar 20, 2009 21:48
Re: Software/GL serialization mismatch
Just a thought, is the only limitation between ZDoom <-> GZDoom saves dynamic light actors? It would make sense to make them compatible down the line if it's actually viable.
Or would that just cause too many maintenance issues later on?
Or would that just cause too many maintenance issues later on?
-
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
Re: Software/GL serialization mismatch
Differences include:
- Map-placed dynamic light actors. To ensure compatibility they'd have to be backported as no-ops with proper save state
- global fog settings (the issue reported here)
- plane reflectiveness - this means two added properties that'd have to be backported, including support for the corresponding action special (the same is true for the global fog settings.)
None of these are show stoppers but they'd require adding some non-functioning stuff to ZDoom.
- Map-placed dynamic light actors. To ensure compatibility they'd have to be backported as no-ops with proper save state
- global fog settings (the issue reported here)
- plane reflectiveness - this means two added properties that'd have to be backported, including support for the corresponding action special (the same is true for the global fog settings.)
None of these are show stoppers but they'd require adding some non-functioning stuff to ZDoom.