PDA

View Full Version : DirectX 9<->11 interop


Psycho
14-Mar-2011, 16:27
Our rendering system is currently running dx9, which won't go away anytime soon due to some clients still running Windows XP.
But for many appliances requiring dx11 is no problem, and in particular I would like to have our GI system in dx11, just passing g-buffers back and forth.

So.. any way to transfer texture buffers without going through system memory? I see there is an NVIDIA WGL extension that may do the trick (double interop dx9-gl-dx11), but anything more direct and/or vendor agnostic? (or at least a similar route for ATI?)

Seems like something is possible between 9ex and 10/11, but I'm not sure how hard it will be to fit the current system to the 9ex restrictions (no managed buffers etc) and then run 9ex where available.

MDolenc
23-Mar-2011, 12:44
Direct3D9Ex is also Vista+ only.

Psycho
23-Mar-2011, 15:42
Sure, but if 9ex and 9 were sufficiently interchangable (9ex device inherits 9 device), I could initialize my dx9 as a 9ex device on Vista+ systems, and thereby have the interop (which still looks quite ugly) where relevant, while still keeping all the old dx9 code. But at least 9ex won't allow managed pool, not sure what else..