The reasoning behind handling it like this was most likely that people were likely to play games in fullscreen, which isn't part of the DWM (Desktop Window Manager), and if they wanted to watch movies they'd have hardware overlay surfaces (which also bypass the DWM), and because of that it wouldn't be much of an issue. With obs-studio and DirectX 11, we managed to force it to render all frames, but that came at the cost of erratic frame rates for asynchronous sources such as capture cards and webcams. We tried things like force flushing the D3D buffer and reducing the number of backbuffers to ensure that all frames got displayed, but it seemed to go completely ignored by DirectX (10) itself. (Any frame rate counter may display 60, while the game appears to be running at 30 or so.) It can sometimes be observed directly in games running in windowed mode as well. The main problem seems to be that when Microsoft took the step to using DirectX to render (mostly) everything Windows, they likely ran into some issues, such as Windows trying to update themselves too often, and thus it sometimes rationalizes and decides that just maybe a window's backbuffer doesn't need to be updated all the time. (Not saying that the forum isn't suited to its purpose, it usually is.) The discussion about the issue mostly happened on IRC, the forum often isn't an environment conductive to very technical discussions.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |