fallback when requesting debug driver and it's not available
@@ -73,6 +73,12 @@ HL_PRIM dx_driver *HL_NAME(create)( HWND window, int format, int flags, int rest
if( restrictLevel >= maxLevels ) restrictLevel = maxLevels - 1;
d->init_flags = flags;
result = D3D11CreateDeviceAndSwapChain(NULL,D3D_DRIVER_TYPE_HARDWARE,NULL,flags,levels + restrictLevel,maxLevels - restrictLevel,D3D11_SDK_VERSION,&desc,&d->swapchain,&d->device,&d->feature,&d->context);
+ if( result == DXGI_ERROR_SDK_COMPONENT_MISSING && (flags & D3D11_CREATE_DEVICE_DEBUG) != 0 ) {
+ // no debug driver available, retry
+ flags &= ~D3D11_CREATE_DEVICE_DEBUG;
+ d->init_flags = flags;
+ result = E_INVALIDARG;
+ }
if( result == E_INVALIDARG ) // most likely no DX11.1 support, try again
result = D3D11CreateDeviceAndSwapChain(NULL,D3D_DRIVER_TYPE_HARDWARE,NULL,flags,NULL,0,D3D11_SDK_VERSION, &desc, &d->swapchain, &d->device, &d->feature, &d->context);
