Current version

v1.10.4 (stable)

Navigation

Main page
Archived news
Downloads
Documentation
   Capture
   Compiling
   Processing
   Crashes
Features
Filters
Plugin SDK
Knowledge base
Contact info
 
Other projects
   Altirra

Archives

Blog Archive

Exploring Direct3D 9Ex and FLIPEX present mode

I recently went through converting Direct3D 9 based portions of VirtualDub to optionally use Direct3D 9Ex (formerly 9.L, and sometimes called Direct3D9Ex depending on the documentation writer's mood). This is an extended version of the Direct3D 9 API that enables additional functionality possible with the DirectX Graphics Infrastructure (DXGI) in Vista/7. Here's what I can say about it:

...BUT:

Long story short, if you've got a small amount of code to do GPU accelerated rendering, modifying it to use 9Ex to avoid the mode switch limitations isn't too bad, but I wouldn't convert a larger engine just for that. FLIPEX is more dubious and limited in advantage; I can see where it would help with a video player, but with a more complex display or rendering setup involved it's more of a pain to use. For the work involved and with VirtualDub's display code I'd be tempted to bypass 9Ex/FLIPEX and just try going to Direct3D 10.1 in 10level9 mode and DXGI, which has a more flexible swap chain interface.

Comments

This blog was originally open for comments when this entry was first posted, but was later closed and then removed due to spam and after a migration away from the original blog software. Unfortunately, it would have been a lot of work to reformat the comments to republish them. The author thanks everyone who posted comments and added to the discussion.