1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-03-13 19:29:14 +01:00

[d3d9] Make unbound textures return (0, 0, 0, 1) (fixed func)

Fixes sky in Ferentus Herrcot Xiones

https://github.com/Joshua-Ashton/d9vk/issues/306
This commit is contained in:
Joshua Ashton 2020-01-18 03:10:33 +00:00
parent 4810a5dc72
commit 35a9934cde

View File

@ -1564,6 +1564,8 @@ namespace dxvk {
texture = m_module.opImageSampleProjImplicitLod(m_vec4Type, imageVarId, texcoord, imageOperands);
else
texture = m_module.opImageSampleImplicitLod(m_vec4Type, imageVarId, texcoord, imageOperands);
texture = m_module.opSelect(m_vec4Type, m_ps.samplers[i].bound, texture, m_module.constvec4f32(0.0f, 0.0f, 0.0f, 1.0f));
}
processedTexture = true;
@ -1992,6 +1994,11 @@ namespace dxvk {
const uint32_t bindingId = computeResourceSlotId(DxsoProgramType::PixelShader,
DxsoBindingType::ColorImage, i);
sampler.bound = m_module.specConstBool(true);
m_module.decorateSpecId(sampler.bound, bindingId);
m_module.setDebugName(sampler.bound,
str::format("s", i, "_bound").c_str());
m_module.decorateDescriptorSet(sampler.varId, 0);
m_module.decorateBinding(sampler.varId, bindingId);