Jump to content

  • Log In with Google      Sign In   
  • Create Account


Enumerating display adapter outputs


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
4 replies to this topic

#1 Alex F   Members   -  Reputation: 122

Like
0Likes
Like

Posted 29 February 2012 - 03:31 AM

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?

Sponsor:

#2 Tape_Worm   Crossbones+   -  Reputation: 1645

Like
1Likes
Like

Posted 29 February 2012 - 11:47 AM

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.

#3 Anddos   Members   -  Reputation: 471

Like
0Likes
Like

Posted 29 February 2012 - 12:32 PM

can you get the display adapter name without using DXUT in d3d9?
:)

#4 mhagain   Crossbones+   -  Reputation: 7343

Like
0Likes
Like

Posted 29 February 2012 - 06:07 PM

IDirect3D9::GetAdapterIdentifier

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

It appears that the gentleman thought C++ was extremely difficult and he was overjoyed that the machine was absorbing it; he understood that good C++ is difficult but the best C++ is well-nigh unintelligible.


#5 Alex F   Members   -  Reputation: 122

Like
0Likes
Like

Posted 01 March 2012 - 03:05 AM

Thanks.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS