mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-02-27 04:54:15 +01:00
[d3d9] Fix sampler slot correction not respecting dmap texture
This commit is contained in:
parent
0691a7fc46
commit
f7d56886c5
@ -6415,12 +6415,15 @@ namespace dxvk {
|
||||
void D3D9DeviceEx::UpdateTextureTypeMismatchesForTexture(uint32_t stateSampler) {
|
||||
uint32_t shaderTextureIndex;
|
||||
const D3D9CommonShader* shader;
|
||||
if (unlikely(stateSampler > caps::MaxTexturesPS + 1)) {
|
||||
if (likely(stateSampler <= caps::MaxTexturesPS)) {
|
||||
shader = GetCommonShader(m_state.pixelShader);
|
||||
shaderTextureIndex = stateSampler;
|
||||
} else if (unlikely(stateSampler >= caps::MaxTexturesPS + 1)) {
|
||||
shader = GetCommonShader(m_state.vertexShader);
|
||||
shaderTextureIndex = stateSampler - caps::MaxTexturesPS - 1;
|
||||
} else {
|
||||
shader = GetCommonShader(m_state.pixelShader);
|
||||
shaderTextureIndex = stateSampler;
|
||||
// Do not type check the fixed function displacement map texture.
|
||||
return;
|
||||
}
|
||||
|
||||
if (unlikely(shader == nullptr || shader->GetInfo().majorVersion() < 2 || m_d3d9Options.forceSamplerTypeSpecConstants)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user