PixelShaderGen: Ensure all components of ocol1 are initialized

This was causing a warning in the shader compiler, as the rgb components
were not initialized. Which shouldn't be an issue, as the rgb is not
used in the blend equation, only the alpha. However, the lack of
initialization causes crashes in Intel's D3D shader compiler, so we'll
play nice and initialize all the channels.
This commit is contained in:
Stenzek 2018-08-24 23:53:00 +10:00
parent 248afb9fa7
commit bae1168fe9
1 changed files with 2 additions and 2 deletions

View File

@ -1406,13 +1406,13 @@ static void WriteColor(ShaderCode& out, APIType api_type, const pixel_shader_uid
// Use dual-source color blending to perform dst alpha in a single pass // Use dual-source color blending to perform dst alpha in a single pass
if (use_dual_source) if (use_dual_source)
out.Write("\tocol1.a = float(prev.a) / 255.0;\n"); out.Write("\tocol1 = float4(0.0, 0.0, 0.0, float(prev.a) / 255.0);\n");
} }
else else
{ {
out.Write("\tocol0.a = float(prev.a >> 2) / 63.0;\n"); out.Write("\tocol0.a = float(prev.a >> 2) / 63.0;\n");
if (use_dual_source) if (use_dual_source)
out.Write("\tocol1.a = float(prev.a) / 255.0;\n"); out.Write("\tocol1 = float4(0.0, 0.0, 0.0, float(prev.a) / 255.0);\n");
} }
} }