Enumerating display adapter outputs

Started by
3 comments, last by Alex F 12 years, 1 month ago
I found this article, which shows, how to enumerate display adapters and adapter outputs using Direct3D: http://msdn.microsoft.com/en-us/library/windows/desktop/bb205075%28v=vs.85%29.aspx#Enumeration
I see from this article, that IDXGIFactory::EnumAdapters gives access to IDXGIAdapter interface, and D3D11CreateDevice can create 3D device from IDXGIAdapter. There is also IDXGIAdapter::EnumOutputs method, which gives an access to IDXGIOutput interface.
So, I can create ID3D11Device for every adapter. Is it possible, to create ID3D11Device for every adapter output? For example, if display adapter has two outputs, how can I draw separately on every monitor, connected to these outputs?
Advertisement

I found this article, which shows, how to enumerate display adapters and adapter outputs using Direct3D: http://msdn.microsof...spx#Enumeration
I see from this article, that IDXGIFactory::EnumAdapters gives access to IDXGIAdapter interface, and D3D11CreateDevice can create 3D device from IDXGIAdapter. There is also IDXGIAdapter::EnumOutputs method, which gives an access to IDXGIOutput interface.
So, I can create ID3D11Device for every adapter. Is it possible, to create ID3D11Device for every adapter output? For example, if display adapter has two outputs, how can I draw separately on every monitor, connected to these outputs?

You create a swap chain for each output, you don't create a device for each output.

Use the SetFullscreenState to assign an output:
HRESULT SetFullscreenState(
[in] BOOL Fullscreen,
[in] IDXGIOutput *pTarget
);


Note that this is for full screen only.
can you get the display adapter name without using DXUT in d3d9?
:)
IDirect3D9::GetAdapterIdentifier

I really recommend that you look at the SDK documentation for IDirect3D9 - it contains all of this information.

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.

Thanks.

This topic is closed to new replies.

Advertisement