Skip to content

Commit

Permalink
[d3d9] Fix messing up the dirty textures bitmask
Browse files Browse the repository at this point in the history
  • Loading branch information
K0bin authored and doitsujin committed Dec 20, 2024
1 parent b4faf0b commit 1eb0c68
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions src/d3d9/d3d9_device.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3379,7 +3379,7 @@ namespace dxvk {
m_vsShaderMasks = D3D9ShaderMasks();

// Fixed function vertex shaders don't support sampling textures.
m_dirtyTextures = m_vsShaderMasks.samplerMask & m_mismatchingTextureTypes;
m_dirtyTextures |= m_vsShaderMasks.samplerMask & m_mismatchingTextureTypes;
m_mismatchingTextureTypes &= ~m_vsShaderMasks.samplerMask;
}

Expand Down Expand Up @@ -3748,7 +3748,7 @@ namespace dxvk {
newShaderMasks = FixedFunctionMask;

// Fixed function always uses spec constants to decide the texture type.
m_dirtyTextures = newShaderMasks.samplerMask & m_mismatchingTextureTypes;
m_dirtyTextures |= newShaderMasks.samplerMask & m_mismatchingTextureTypes;
m_mismatchingTextureTypes &= ~newShaderMasks.samplerMask;
}

Expand Down Expand Up @@ -6342,7 +6342,7 @@ namespace dxvk {
if (unlikely(shader->GetInfo().majorVersion() < 2)) {
// SM 1 shaders don't define the texture type in the shader.
// We always use spec constants for those.
m_dirtyTextures = shaderSamplerMask & m_mismatchingTextureTypes;
m_dirtyTextures |= shaderSamplerMask & m_mismatchingTextureTypes;
m_mismatchingTextureTypes &= ~shaderSamplerMask;
return;
}
Expand Down

0 comments on commit 1eb0c68

Please sign in to comment.