[D3D12] Blend constant values

This commit is contained in:
Triang3l
2018-10-12 23:56:49 +03:00
parent 5f108246b6
commit 60c7f11fe0
3 changed files with 249 additions and 0 deletions

View File

@@ -174,6 +174,10 @@ class DxbcShaderTranslator : public ShaderTranslator {
kBlend2_Color_OpMin = 1u << kBlend2_Color_OpMin_Shift,
kBlend2_Color_OpMax_Shift = 25,
kBlend2_Color_OpMax = 1u << kBlend2_Color_OpMax_Shift,
kBlend2_Alpha_OpMin_Shift = 26,
kBlend2_Alpha_OpMin = 1u << kBlend2_Alpha_OpMin_Shift,
kBlend2_Alpha_OpMax_Shift = 27,
kBlend2_Alpha_OpMax = 1u << kBlend2_Alpha_OpMax_Shift,
};
// IF SYSTEM CONSTANTS ARE CHANGED OR ADDED, THE FOLLOWING MUST BE UPDATED:
@@ -315,6 +319,10 @@ class DxbcShaderTranslator : public ShaderTranslator {
return sampler_bindings_.data();
}
// Returns whether blending should be done at all (not 1 * src + 0 * dest).
static bool GetBlendConstants(uint32_t blend_control, uint32_t& blend1_out,
uint32_t& blend2_out);
protected:
void Reset() override;