Does Fallout NV PS3 lag explain Skyrim issues?
Project director provides insight into engine design.
In our weekend article on the Skyrim PS3 lag issue, we analysed the performance of the game running from a fresh save compared to a crippled 65 hour game, and then put the new patch through its paces - and found it wanting.
Our best theory on why it happened at all came down to the notion of an unbounded game world with thousands upon thousands of objects having to be tracked as they moved from their default positions as the player moved through the game. It's an enormous undertaking to store all of this information, and of the three platforms Skyrim is available for, it's the PlayStation 3 that presents the most challenges from a memory management perspective.
Thanks to Eurogamer reader mcmothercruncher, who posted a revealing link to the Bethesda forums, this theory appears to have gained extra weight through Formspring comments by Obsidian's Joshua E Sawyer, lead designer and project director of Fallout: New Vegas - which ran on an earlier version of the same engine.
Both Fallout 3 and New Vegas exhibited an issue very close to that seen in Skyrim. The game save gradually increases in size until performance is impacted, resulting in the same kind of performance drop we see in Skyrim.
"It's an engine-level issue with how the save game data is stored off as bit flag differences compared to the placed instances in the main .esm + DLC .esms," Sawyer explained, referencing the database files used by the Fallout 3/New Vegas engine, which remain in place in Skyrim.
"As the game modifies any placed instance of an object, those changes are stored off into what is essentially another .esm. When you load the save game, you're loading all of those differences into resident memory."
Sawyer also explained that the issue isn't a simple bug that can be easily fixed - for New Vegas at least. If it is indeed the same issue that manifests on Skyrim, it's not a section of errant code that can be corrected, but something more fundamental - which may explain the limited impact of last week's patch.
"It's not like someone wrote a function and put a decimal point in the wrong place or declared something as a float when it should have been an int. We're talking about how the engine fundamentally saves off and references data at run time. Restructuring how that works would require a large time commitment. Obsidian also only had that engine for a total of 18 months prior to F:NV being released, which is a relatively short time to understand all of the details of how the technology works."
Asked why the Fallout NV lag issue impacts the PlayStation 3 more severely than other platforms, Sawyer noted the differences in the memory set-up of the respective consoles.
"The Xbox 360 has a unified memory pool: 512 megs of RAM usable as system memory or graphics memory," he said. "The PS3 has a divided memory pool: 256 megs for system, 256 for graphics. It's the same total amount of memory, but not as flexible for a developer to make use of."