GPU: Implement dithering on OpenGL backend

This commit is contained in:
Connor McLaughlin
2019-11-01 22:47:32 +10:00
parent 1d1da1d82c
commit ac82383abe
5 changed files with 76 additions and 22 deletions

View File

@ -44,14 +44,15 @@ protected:
struct HWRenderBatch
{
HWPrimitive primitive;
TextureMode texture_mode;
u32 texture_page_x;
u32 texture_page_y;
u32 texture_palette_x;
u32 texture_palette_y;
HWPrimitive primitive;
TextureMode texture_mode;
TransparencyMode transparency_mode;
std::array<u8, 4> texture_window_values;
bool dithering;
std::vector<HWVertex> vertices;
@ -100,7 +101,7 @@ protected:
}
std::string GenerateVertexShader(bool textured);
std::string GenerateFragmentShader(HWBatchRenderMode transparency, TextureMode texture_mode);
std::string GenerateFragmentShader(HWBatchRenderMode transparency, TextureMode texture_mode, bool dithering);
std::string GenerateScreenQuadVertexShader();
std::string GenerateFillFragmentShader();
std::string GenerateDisplayFragmentShader(bool depth_24bit, bool interlaced);