mirror of
https://github.com/RetroDECK/Duckstation.git
synced 2024-11-29 17:15:40 +00:00
OpenGLDevice: More Mali driver workarounds
This commit is contained in:
parent
fb0ad26de8
commit
0632c3356c
|
@ -65,7 +65,12 @@ static void DisableBrokenExtensions(const char* gl_vendor, const char* gl_render
|
||||||
gl_major_version >= 3 && gl_minor_version >= 2 && major_version > 0))
|
gl_major_version >= 3 && gl_minor_version >= 2 && major_version > 0))
|
||||||
{
|
{
|
||||||
// r32p0 and beyond seem okay.
|
// r32p0 and beyond seem okay.
|
||||||
Log_VerbosePrintf("Keeping copy_image for driver version '%s'", gl_version);
|
//Log_VerbosePrintf("Keeping copy_image for driver version '%s'", gl_version);
|
||||||
|
|
||||||
|
// Framebuffer blits still end up faster.
|
||||||
|
Log_VerbosePrintf("Newer Mali driver detected, disabling GL_{EXT,OES}_copy_image.");
|
||||||
|
GLAD_GL_EXT_copy_image = 0;
|
||||||
|
GLAD_GL_OES_copy_image = 0;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -507,7 +507,9 @@ bool OpenGLDevice::CheckFeatures(bool* buggy_pbo, FeatureMask disabled_features)
|
||||||
// noperspective is not supported in GLSL ES.
|
// noperspective is not supported in GLSL ES.
|
||||||
m_features.noperspective_interpolation = !is_gles;
|
m_features.noperspective_interpolation = !is_gles;
|
||||||
|
|
||||||
m_features.texture_copy_to_self = !(disabled_features & FEATURE_MASK_TEXTURE_COPY_TO_SELF);
|
// glBlitFramebufer with same source/destination should be legal, but on Mali (at least Bifrost) it breaks.
|
||||||
|
// So, blit from the shadow texture, like in the other renderers.
|
||||||
|
m_features.texture_copy_to_self = !vendor_id_arm && !(disabled_features & FEATURE_MASK_TEXTURE_COPY_TO_SELF);
|
||||||
|
|
||||||
m_features.geometry_shaders =
|
m_features.geometry_shaders =
|
||||||
!(disabled_features & FEATURE_MASK_GEOMETRY_SHADERS) && (GLAD_GL_VERSION_3_2 || GLAD_GL_ES_VERSION_3_2);
|
!(disabled_features & FEATURE_MASK_GEOMETRY_SHADERS) && (GLAD_GL_VERSION_3_2 || GLAD_GL_ES_VERSION_3_2);
|
||||||
|
|
Loading…
Reference in a new issue