mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-20 09:19:48 +00:00
VideoCommon: Better driver bug handling
Adds a pass to process driver deficiencies between UID caching and use, allowing a full view of the whole pipeline, since some bugs/workarounds involve interactions between blend modes and the pixel shader
This commit is contained in:
parent
99eef44765
commit
6ab24e6c17
16 changed files with 292 additions and 202 deletions
|
@ -18,6 +18,7 @@ struct pixel_ubershader_uid_data
|
|||
u32 early_depth : 1;
|
||||
u32 per_pixel_depth : 1;
|
||||
u32 uint_output : 1;
|
||||
u32 no_dual_src : 1;
|
||||
|
||||
u32 NumValues() const { return sizeof(pixel_ubershader_uid_data); }
|
||||
};
|
||||
|
@ -42,9 +43,9 @@ struct fmt::formatter<UberShader::pixel_ubershader_uid_data>
|
|||
template <typename FormatContext>
|
||||
auto format(const UberShader::pixel_ubershader_uid_data& uid, FormatContext& ctx) const
|
||||
{
|
||||
return fmt::format_to(ctx.out(), "Pixel UberShader for {} texgens{}{}{}", uid.num_texgens,
|
||||
uid.early_depth ? ", early-depth" : "",
|
||||
uid.per_pixel_depth ? ", per-pixel depth" : "",
|
||||
uid.uint_output ? ", uint output" : "");
|
||||
return fmt::format_to(
|
||||
ctx.out(), "Pixel UberShader for {} texgens{}{}{}{}", uid.num_texgens,
|
||||
uid.early_depth ? ", early-depth" : "", uid.per_pixel_depth ? ", per-pixel depth" : "",
|
||||
uid.uint_output ? ", uint output" : "", uid.no_dual_src ? ", no dual-source blending" : "");
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue