我正在学习 Directx 11。使用以下代码初始化 Directx 11 时应检查多重采样:
UINT m4xMsaaQuality;
HRESULT hr = md3dDevice ->CheckMultisampleQualityLevels(DXGI_FORMAT_R8G8B8A8_UNORM, 4, &m4xMsaaQuality);
并且在创建交换链时,需要m4xMsaaQuality。代码如下:
DXGI_SWAP_CHAIN_DESC sd;
sd.BufferDesc.Quality = m4xMsaaQuality -1;
这些代码来自教科书,我不知道为什么质量应该比m4xMsaaQuality小1。
最佳答案
CheckMultisampleQualityLevels 返回质量级别的数量,而不是最高级别。
如果它返回“n”,这些级别的编号为 0 到 n-1。例如,如果它返回 4,它们的编号为 0、1、2、3 - 如果您想要最高的,它总是比级别数少 1
关于c++ - 为什么 SampleDesc 的质量应该比 Directx11 中的 Msaaquality 小 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23678110/