在开发VR畸变的时候发现无论如何修改代码,判断超出uv边界discard,总是会残留边角,最后尝试修改下
D3D11_SAMPLER_DESC sampDesc = {};
sampDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;
sampDesc.AddressU = D3D11_TEXTURE_ADDRESS_BORDER;
sampDesc.AddressV = D3D11_TEXTURE_ADDRESS_BORDER;
sampDesc.AddressW = D3D11_TEXTURE_ADDRESS_BORDER;
sampDesc.ComparisonFunc = D3D11_COMPARISON_ALWAYS;
发现之前的ComparisonFunc是D3D11_COMPARISON_NEVER;而且ADDRESS是WARP,所以才导致了图像重复,如果设置为ALWAYS则自动不去显示超过边界uv值的图像部分