Reputation: 33
I have two discrete video adapters on my PC: GTX 1060 and RTX 2080 ti. I would like to use second one for my DXUT app. I found command line argument -adapter# to specify it, however, my program crashed when I run with -adapter1 (1 is adapter ordinal for RTX2080) option. I started debugging and figured out the following issue: EnumOutputs returns only DXGI_ERROR_NOT_FOUND.
For GTX1060 first EnumOutputs call returns correct output.
Code section:
HRESULT CD3D11Enumeration::EnumerateOutputs( _In_ CD3D11EnumAdapterInfo* pAdapterInfo )
{
HRESULT hr;
IDXGIOutput* pOutput;
for( int iOutput = 0; ; ++iOutput )
{
pOutput = nullptr;
//next line returns at once DXGI_ERROR_NOT_FOUND for RTX2080
hr = pAdapterInfo->m_pAdapter->EnumOutputs( iOutput, &pOutput );
if( DXGI_ERROR_NOT_FOUND == hr )
{
return S_OK;
}
...
}
hr = EnumerateOutputs( pAdapterInfo );
if( FAILED( hr ) || pAdapterInfo->outputInfoList.empty() ) //failed here cause second condition is true
{
delete pAdapterInfo;
continue;
}
Who know how to fix this problem?
All drivers are up to date.
P.S. I also tried to specify graphic card via Windows and GeForce software, but It seems appropriate only for laptop case with both integrate/discrete cards.
Upvotes: 0
Views: 87
Reputation: 33
Oh my God.. The problem is only GTX1060 connected to my monitor.
My tutor explained me that it's impossible to render frame buffer in this case.
Upvotes: 1