Skip to content

Comments

[d3d9] D3D9Ex FlipEx presentation mode support#433

Merged
elishacloud merged 6 commits intoelishacloud:masterfrom
Braasileiro:d3d9ex-flipex
Sep 9, 2025
Merged

[d3d9] D3D9Ex FlipEx presentation mode support#433
elishacloud merged 6 commits intoelishacloud:masterfrom
Braasileiro:d3d9ex-flipex

Conversation

@Braasileiro
Copy link
Contributor

@Braasileiro Braasileiro commented Sep 9, 2025

Added the option to enable D3DSWAPEFFECT_FLIPEX when using the D3D9Ex API.

This swap effect allows the application to enter Flip Model, which helps reduce latency and even enables support for VRR in borderless mode.

Not every game works well with the conversion to D3D9Ex, but I believe it is a good option to have.

I am not very experienced in this area, so I followed the rules in this Microsoft documentation.

AntiAliasing must be disabled in FlipEx, at least 2 backbuffers are required, and the D3DPRESENTFLAG_LOCKABLE_BACKBUFFER flag cannot be used either, because in Flip Mode DWM needs to access the backbuffer.

@elishacloud
Copy link
Owner

Thanks! I added some checks. FlipEx only works in windowed mode and only works with CreateDeviceEx() and ResetEx(). Also, I allowed it to work even if D3d9to9Ex is disabled but the game uses Direct3D9Ex natively, like Halo.

@elishacloud elishacloud merged commit 50f6b0f into elishacloud:master Sep 9, 2025
2 checks passed
@Braasileiro
Copy link
Contributor Author

Thanks! I added some checks. FlipEx only works in windowed mode and only works with CreateDeviceEx() and ResetEx(). Also, I allowed it to work even if D3d9to9Ex is disabled but the game uses Direct3D9Ex natively, like Halo.

Thank you and sorry for the points I overlooked on the implementation 😅

@Braasileiro Braasileiro deleted the d3d9ex-flipex branch September 14, 2025 00:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants