It seems like much of the documented DXGI functionality isn't
reachable using only DXGI. I can enumerate Adapters and Outputs, but
that's about it. The remaining functionality (surfaces, swap chains,
etc) seems to require a device. There is an IDXGIDevice interface,
seemingly intended to interact with DXGI objects in an graphics API
neutral way. However, I see no way to create an object that
implements that interface with DXGI.
Is it possible to create a shared surface with DXGI, map it to modify
the bits, unmap it, then pass it to another application, etc? Or is
the use of another API's device required? (such as ID3D10Device or
IDirect3DDevice9Ex)
On a more practical matter, the 64-bit dxgi.lib seems to be missing
from my Windows SDK installation. Is this a known issue?
Chris
The x64 version of dxgi.lib is defintely in the latest January 2008 version
of the Windows SDK and in the DirectX SDK.
--
-Chuck Walbourn
SDE, XNA Developer Connection
This posting is provided "AS IS" with no warrenties, and confers no rights.
>To use shared surfaces, you have to use Direct3D9Ex or Direct3D 10. If you
>are sharing between 9 & 10, it work best in Vista to craete it with
>Direct3D9Ex and only open it with D3D10.
That makes more sense. I think I was thrown by the IDXGIDevice
documentation statement "This interface is useful to applications that
do not use Direct3D to communicate with DXGI."
http://msdn2.microsoft.com/en-us/library/bb174527(VS.85).aspx
What is it that makes the sharing work better in one direction than
the other between Direct3D versions?
Are there any Vista system services (DWM, etc) that share surfaces in
a developer visible way or are shared surfaces only used internally
and in private exchanges between applications?
>The x64 version of dxgi.lib is defintely in the latest January 2008 version
>of the Windows SDK and in the DirectX SDK.
I will look into getting a more recent SDK, it's definitely not in the
Windows SDK that was released when Vista was (files dated 10/30/2006).
Thanks,
Chris
I was able to find the x64 (and even IA64) dxgi.lib in the January
2008 Windows SDK.
It's unfortunate that the DirectX documentation isn't integrated with
the Windows SDK along with the headers and libraries that are already
there. I'd expect that only the more rapidly changing non-core
functionality like samples, D3DX, tools, etc. would need to be
packaged in a special SDK.
Chris