when calling ID3D11Device::CheckFeatureSupport for all the possible features, most return E_INVALIDARG.Does this simply mean "feature not supported" or is it an actual error?For instance:
D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS hardwareOptions;
device->CheckFeatureSupport(D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS, &hardwareOptions, sizeof(hardwareOptions));
does just fine, however
D3D11_FEATURE_DATA_FORMAT_SUPPORT format;
D3D11_FEATURE_DATA_FORMAT_SUPPORT2 format2;
device->CheckFeatureSupport(D3D11_FEATURE_FORMAT_SUPPORT, &format, sizeof(format));
device->CheckFeatureSupport(D3D11_FEATURE_FORMAT_SUPPORT2, &format2, sizeof(format2));
both return E_INVALIDARG, which is weird, am I not passing the correct arguments?
I also get E_INVALIDARG on D3D11_FEATURE_D3D11_OPTIONS, D3D11_FEATURE_ARCHITECTURE_INFO, D3D11_FEATURE_D3D9_OPTIONS, D3D11_FEATURE_D3D9_SHADOW_SUPPORT and D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT.
The device is created with feature level 11 and model 5 shaders run fine otherwise.
I also get E_INVALIDARG on D3D11_FEATURE_D3D11_OPTIONS, D3D11_FEATURE_ARCHITECTURE_INFO, D3D11_FEATURE_D3D9_OPTIONS, D3D11_FEATURE_D3D9_SHADOW_SUPPORT and D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT.
The device is created with feature level 11 and model 5 shaders run fine otherwise.