Direct3D Retained Mode: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 13: Line 13:
LEGO Island uses Retained Mode extensively for all of its 3D graphics, and is one of only two major commercially successful games known to do so (the other being {{Wikipedia|LEGO Rock Raiders}}).
LEGO Island uses Retained Mode extensively for all of its 3D graphics, and is one of only two major commercially successful games known to do so (the other being {{Wikipedia|LEGO Rock Raiders}}).


Retained Mode's age and obscurity initially made LEGO Island's code harder to analyze since (unlike its peers `DDRAW.DLL`, `D3DIM.DLL`, etc.) it largely predates online documentation and the D3DRM.DLL provided on disc was too old to have PDB debug symbols available. However, it was discovered that a more recent version of D3DRM.DLL was released in 2001 with Windows XP and also has PDB symbols available, mitigating this entirely. A digitized book from the era was also discovered documenting most of Retained Mode's API.
Retained Mode's age and obscurity initially made LEGO Island's code harder to analyze since (unlike its peers <code>DDRAW.DLL</code>, <code>D3DIM.DLL</code>, etc.) it largely predates online documentation and the D3DRM.DLL provided on disc was too old to have PDB debug symbols available. However, it was discovered that a more recent version of D3DRM.DLL was released in 2001 with Windows XP and also has PDB symbols available, mitigating this entirely. A digitized book from the era was also discovered documenting most of Retained Mode's API.


In many ways, Retained Mode is likely the culprit in many of LEGO Island's [[Compatibility Issues|compatibility issues]] with modern systems. Since Microsoft has dropped any and all support for Retained Mode, it's possible the game's codebase may have aged better had it been written for Immediate Mode instead.
In many ways, Retained Mode is likely the culprit in many of LEGO Island's [[Compatibility Issues|compatibility issues]] with modern systems. Since Microsoft has dropped any and all support for Retained Mode, it's possible the game's codebase may have aged better had it been written for Immediate Mode instead.