|
@@ -169,8 +169,31 @@ Config::Config() {
|
|
|
|
|
|
//Adreno 3xx Compatibility
|
|
|
const String rendering_device_name = String::utf8((const char *)glGetString(GL_RENDERER));
|
|
|
- //TODO: Check the number between 300 and 399(?)
|
|
|
- adreno_3xx_compatibility = (rendering_device_name.left(13) == "Adreno (TM) 3");
|
|
|
+ if (rendering_device_name.left(13) == "Adreno (TM) 3") {
|
|
|
+ flip_xy_workaround = true;
|
|
|
+ disable_particles_workaround = true;
|
|
|
+
|
|
|
+ // ignore driver version 331+
|
|
|
+ const String gl_version = String::utf8((const char *)glGetString(GL_VERSION));
|
|
|
+ // Adreno 3xx examples (https://opengles.gpuinfo.org/listreports.php):
|
|
|
+ // ===========================================================================
|
|
|
+ // OpenGL ES 3.0 [email protected] AU@ (CL@)
|
|
|
+ // OpenGL ES 3.0 [email protected] AU@ (GIT@I96aee987eb)
|
|
|
+ // OpenGL ES 3.0 [email protected] AU@ (GIT@Ifd751822f5)
|
|
|
+ // OpenGL ES 3.0 [email protected] [email protected] (GIT@Ie4790512f3)
|
|
|
+ // OpenGL ES 3.0 [email protected] AU@ (GIT@I109c45a694)
|
|
|
+ // OpenGL ES 3.0 [email protected] (GIT@35e467f, Ice9844a736) (Date:04/15/19)
|
|
|
+ // OpenGL ES 3.0 [email protected] (GIT@d39f783, I79de86aa2c, 1591296226) (Date:06/04/20)
|
|
|
+ // OpenGL ES 3.0 [email protected] (GIT@09fef447e8, I1fe547a144, 1661493934) (Date:08/25/22)
|
|
|
+ String driver_version = gl_version.get_slice("V@", 1).get_slice(" ", 0);
|
|
|
+ if (driver_version.is_valid_float() && driver_version.to_float() >= 331.0) {
|
|
|
+ flip_xy_workaround = false;
|
|
|
+
|
|
|
+ //TODO: also 'GPUParticles'?
|
|
|
+ //https://github.com/godotengine/godot/issues/92662#issuecomment-2161199477
|
|
|
+ //disable_particles_workaround = false;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
Config::~Config() {
|