Hello everyone, I've been playing around with D3D12 for the last two days but haven't been able to use MSAA. In D3D11 I used to determine the supported samples count and quality level with the method CheckMultisampleQualityLevels and now I'm trying to do the same with CheckFeatureSupport with the following piece of code:
D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS msaaQualityDesc{};
msaaQualityDesc.SampleCount = 8;
msaaQualityDesc.Format = m_rtvFormat;
msaaQualityDesc.Flags = D3D12_MULTISAMPLE_QUALITY_LEVELS_FLAG_NONE;
while (msaaQualityDesc.SampleCount > 1) {
HRESULT hr = m_device->CheckFeatureSupport(D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS,
&msaaQualityDesc, 1);
if (SUCCEEDED(hr)) {
break;
}
msaaQualityDesc.SampleCount--;
}
where m_rtvFormat has been DXGI_FORMAT_R8G8B8A8_UNORM and DXGI_FORMAT_B8G8R8A8_UNORM. The resulting samples count is always 1 with a GTX 970. Besides, the same combinations of format and samples count succeed in D3D11 on the same card. What am I doing wrong?