View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0004922||Multi Theft Auto : San Andreas||Client||public||2009-08-31 15:20||2018-09-02 20:19|
|Target Version||Fixed in Version|
|Summary||0004922: Fix alt+tab Direct3D stability issues|
Multi Theft Auto currently uses a hack to prevent the game from pausing when it is minimized.
When the game is running normally, the Direct3D events (OnBeginScene, OnPresent) are used to provide the pulses for the framework.
When the game is minimized, the Direct3D device is lost and the above events are no longer fired. The CClientGame::GameProcessHandler function is called and pulses the framework instead.
This hack does not work, as the parts in our framework that use Direct3D are not set up to cope with any Direct3D call failures. When the device is lost, any buffers and surfaces (e.g. in the GUI subsystem) that are needed can no longer be allocated, causing problems as these cases are currently not handled properly ranging from unhandled exceptions to texture swapping due to corruption.
A solution has to be found where we either pause the entire game or only pulse the parts that do not have anything to do with Direct3D (or handle the exceptions in the parts that do).
|Tags||No tags attached.|
|parent of||0004647||resolved||ccw||Multi Theft Auto : San Andreas||Stability errors (random texture swapping/assertions) after alt+tab|
|parent of||0003055||closed||Multi Theft Auto : San Andreas||Crash oddity after d3d Invalidate/Restore sequence (after initializing/splash screen)|
|parent of||0004775||resolved||ccw||Multi Theft Auto : San Andreas||Error when maximizing the game, crash.|
|parent of||0006755||closed||New issues||Multiple crashes when alt-tabbing into the game, involving shaders and interiors.|
|related to||0005057||closed||Multi Theft Auto : San Andreas||Remove ability to alt-tab when not using windowed mode|