godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
90.97k stars 21.16k forks source link

Editor is blinking with strange color lines in Compatibility mode #96943

Closed jackycute closed 1 week ago

jackycute commented 1 month ago

Tested versions

System information

Godot v4.4.dev2 - Windows 10.0.22631 - OpenGL 3 (Compatibility) - Intel(R) UHD Graphics (Intel Corporation; 32.0.101.5972) - 12th Gen Intel(R) Core(TM) i5-1240P (16 Threads)

Issue description

I tried to open my previous project and the editor shows strange color lines on 2D scene UI and AnimationPlayer tracks. Those line color changes whenever I move my mouse. Screenshot 2024-09-13 111855 Screenshot 2024-09-13 112144

Steps to reproduce

Open any new project in Godot 4.4 dev-dev2 can reproduce this.

Minimal reproduction project (MRP)

Open any new project in Godot 4.4 dev-dev2 can reproduce this.

akien-mga commented 1 month ago

Can you reproduce the issue in 4.3.stable?

jackycute commented 1 month ago

Can you reproduce the issue in 4.3.stable?

No, 4.3 stable doesn't have this issue.

akien-mga commented 1 month ago

This is most likely a bug with ANGLE, which was enabled by default for old Intel processors after the 4.3 release. CC @bruvzg @clayjohn

clayjohn commented 1 month ago

It could also have been introduced by https://github.com/godotengine/godot/pull/96413 (or a combination of both)

clayjohn commented 1 month ago

@jackycute Can you try disabling the rendering/gl_compatibility/fallback_to_angle project setting?

jackycute commented 1 month ago

@jackycute Can you try disabling the rendering/gl_compatibility/fallback_to_angle project setting?

Thanks for the reply. I tried to disable rendering/gl_compatibility/fallback_to_angle in project settings then restart but the blinking color lines are still there. But if I choose to use opengl3_angle for rendering/gl_compatibility/driver.windows then restart, the blinking color lines are gone, but the project re-imports every assets again and again (maybe that is another issue?).

bruvzg commented 1 month ago

UHD Graphics

None of UHD Graphics cards should be in the ANGLE fallback list, so it should not be ANGLE related.

Maran23 commented 1 month ago

Is it also reproducable at 4.4 dev1?

jackycute commented 1 month ago

Is it also reproducable at 4.4 dev1?

No, I can't reproduce this at 4.4 dev1, only reproducable at 4.4 dev2.

Maran23 commented 1 month ago

Hm, this really sound like it is caused by https://github.com/godotengine/godot/pull/96413. I wonder if we should rather not overwrite any of that shader methods at all. Only do that for the broken adreno devices, if that is possible.

Or something is broken that uses the methods beforehand. But does not look like that.

clayjohn commented 1 month ago

I can't reproduce with Godot v4.4.dev2 - Windows 10.0.22631 - OpenGL 3 (Compatibility) - Intel(R) UHD Graphics 620 (Intel Corporation; 27.20.100.8681) - Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz (8 Threads)

So this seems to be a problem with that specific device/driver version.

edit: I updated my GPU driver to 31.0.101.2115 and I still can't reproduce the issue

oxygen commented 1 month ago

Upgraded to same Godot version as OP.

Strange colored blinking squares for the 3D world on iOS 18 on gl_compatibility (forward+ works; mobile doesn't show 3D world at all). 2D works fine (iPad M1 Pro).

iOS 17 works fine on gl_compatibility (iPhone XS Max), both godot 4.3-stable and 4.4-dev

Confirmed issue with 4.4dev as 4.3-stable works fine on gl_compatibility on the new iOS 18 (max fps for my project) (iPad M1 Pro)

clayjohn commented 1 month ago

Upgraded to same Godot version as OP.

Strange colored blinking squares for the 3D world on iOS 18 on gl_compatibility (forward+ works; mobile doesn't show 3D world at all). 2D works fine.

iOS 17 works fine on gl_compatibility.

I'm not super sure but the fps seems much lower too (iOS 17 XS Max) on gl_compatibility than godot 4.3. I'll do more t tests.

Confirmed issue with 4.4 as 4.3dev5 works fine on gl_compatibility on the new iOS 18 (max fps for my project).

A few follow up questions:

  1. What devices are you testing with?
  2. Have you compared to 4.3 stable? 4.3 dev 5 is from back in March. So it doesn't help us narrow things down
oxygen commented 1 month ago

@clayjohn I edited the comment you replied to. Let me know if you think a separate bug with a repro project is needed for this one

kisg commented 3 weeks ago

We can also confirm this issue with iOS 18 on iPad Pro M2 and iPad Pro M4. Reverting https://github.com/godotengine/godot/pull/96413 fixed the issue.

cc @konczg