godotengine / godotengine/godot
Transparent Window doesn't work correctly on Windows, also ColorPicker pick screen color
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
Tested versions
- Reproducible in Godot 4.5 beta 5
- Reproducible in Godot 4.4
System information
Windows 10 - Godot v4.5.beta5 - Vulkan (Foward+) - Dedicated NVIDEA GeForce 1070
Issue description
Transparent windows behaves very strangely on Windows 10*.
This might be a very specific bug so I was wondering if anyone else has seen this behavior?
https://github.com/user-attachments/assets/1cf26e9f-e7a3-4fa8-b095-58da5ed0d020
If I turn on borderless,
it works properly and displays the screen behind correctly, so its not that big of an issue.
https://github.com/user-attachments/assets/ad32d39d-0397-48bb-8d31-312bc98e5006
Another problem that might be related to this is that my ColorPicker 'pick screen color' also doesn't work.
It always shows the black color on the floating color preview.
But sometimes when I move the mouse fast, I can see the colors for a split second.
(Also, for some reason the white borders around the color rect does not show in any recording software I tried, so its only a black square in the video. Tried with ScreenToGif, ShareX and OBS screen recording)
https://github.com/user-attachments/assets/410ee6ff-822e-411c-afe2-47709bdee6ad
The ColorPicker works normally if I enable Single Window Mode for the Editor.
Which is why I think the problem is related to the floating (possibly transparent) window of the color pick preview.
I'm almost positive this is some incompatibility with older window stuff since I've never seen anyone with this problem.
So I don't have high hopes this can be fixed, but just in case this is something else I'll leave this issue open.
And for some context: I'm running Windows 10 1803 (17134.1246). I ran out of SSD to update my windows years ago.
So I can't even run games that says it "Requires Windows 10" because what it actually means it that it requires windows 10 1903.
But since Godot still supports windows 8 that should not have been a problem.
Also my nvidea drivers are stuck at 531.41 from 2023. When I updated them this year it kept giving me BSOD to I had to go back.
I also had a few programs refuse to run things saying it my CPU lacks "SSE4.2 instruction set", even tho my i7-7700 technically has it.
Which is why I said this is likely something VERY specific, of maybe even a miss-configuration of something I did years ago.
Sorry for the long text, feel free to close this if no one else finds this problem.
Steps to reproduce
-
Enable the Project settings:
display/window/size/transparent
display/window/per_pixel_transparency/allowed
rendering/viewport/transparent_background -
Make sure embed window is disabled
-
Start the game
Result: Transparent background is not transparent, makes background glitchy
Expected: Transparent background.
Minimal reproduction project (MRP)
Any empty project should do it. But just in case here's the one I used. I left the '.godot' folder just in case too.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.