mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-06-11 04:41:42 +00:00
Enable shader_framebuffer_fetch blend path on ubershaders
Tested on a linux Intel Skylake integrated graphics with blend_func_extended force-disabled, as it's the only platform I have that doesn't crash with ubershaders and supports fb_fetch
This commit is contained in:
parent
8d68adcaf3
commit
ceb1f8c8cb
5 changed files with 170 additions and 4 deletions
|
@ -473,6 +473,43 @@ void PixelShaderManager::SetBlendModeChanged()
|
|||
constants.dither = dither;
|
||||
dirty = true;
|
||||
}
|
||||
BlendingState state = {};
|
||||
state.Generate(bpmem);
|
||||
if (constants.blend_enable != state.blendenable)
|
||||
{
|
||||
constants.blend_enable = state.blendenable;
|
||||
dirty = true;
|
||||
}
|
||||
if (constants.blend_src_factor != state.srcfactor)
|
||||
{
|
||||
constants.blend_src_factor = state.srcfactor;
|
||||
dirty = true;
|
||||
}
|
||||
if (constants.blend_src_factor_alpha != state.srcfactoralpha)
|
||||
{
|
||||
constants.blend_src_factor_alpha = state.srcfactoralpha;
|
||||
dirty = true;
|
||||
}
|
||||
if (constants.blend_dst_factor != state.dstfactor)
|
||||
{
|
||||
constants.blend_dst_factor = state.dstfactor;
|
||||
dirty = true;
|
||||
}
|
||||
if (constants.blend_dst_factor_alpha != state.dstfactoralpha)
|
||||
{
|
||||
constants.blend_dst_factor_alpha = state.dstfactoralpha;
|
||||
dirty = true;
|
||||
}
|
||||
if (constants.blend_subtract != state.subtract)
|
||||
{
|
||||
constants.blend_subtract = state.subtract;
|
||||
dirty = true;
|
||||
}
|
||||
if (constants.blend_subtract_alpha != state.subtractAlpha)
|
||||
{
|
||||
constants.blend_subtract_alpha = state.subtractAlpha;
|
||||
dirty = true;
|
||||
}
|
||||
s_bDestAlphaDirty = true;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue