Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Godot still using CPU/GPU even if the window is not visible #26605

Closed
PabloNeirotti opened this issue Mar 4, 2019 · 5 comments
Closed

Godot still using CPU/GPU even if the window is not visible #26605

PabloNeirotti opened this issue Mar 4, 2019 · 5 comments

Comments

@PabloNeirotti
Copy link

PabloNeirotti commented Mar 4, 2019

Godot version:
v3.1.beta8.official (also v3.0)

OS/device including version:
macOS Mojave (10.14.3)

Issue description:
Godot seems to continue rendering even if the window is opened on another desktop or it's own fullscreen desktop, while I am on another desktop. This takes a big performance hit on my machine while multitasking, and it's specially bad if I am play-testing, which means I am rendering the game twice: the Godot scene I currently have open in the editor, and the game on runtime. Ideally Godot wouldn't need to use much of the GPU nor CPU while it's not visible.

Steps to reproduce:
Open Godot, specially something that has an intensive graphic processing on the scene (Particles, HDR maybe), make it full screen, then switch to your regular desktop. Watch the Activity Monitor. Godot still ranking #1 in CPU and Energy consumption.

@Calinou
Copy link
Member

Calinou commented Mar 30, 2019

See also #16397 (which could be enabled automatically when the project is running).

The FPS cap could be lowered while the Godot window is unfocused, but it'd look choppy if there's stuff moving on-screen (which is possible with shaders or particles).

We should also check CPU/GPU usage while the Godot editor is minimized (but rendering continuously due to moving objects in the viewport). If it's still rendering, we could also lower the FPS cap while the window is minimized.

@PabloNeirotti
Copy link
Author

There is little consumption while minimized, the real issue is when it is fullscreen on another desktop - it’s still eating a lot of CPU time even if it can’t be seen.

It makes it a pain to work in fullscreen mode 😅

@Calinou
Copy link
Member

Calinou commented Mar 31, 2019

I think it'd be difficult to implement a method/signal that can be used to check whether the Godot window is covered by other windows. This is still technically possible, see Chrome which can detect this as of recently.

@PabloNeirotti
Copy link
Author

That’s probably for a different issue.

Most apps I use on macOS seem to know if they are not visible due to being minimized or in a different desktop. Godot only seems to check if it’s minimized, but not a different desktop.

If the same power saving could be done when Godot is on a different desktop other than the active one, then that’d be amazing.

@Calinou
Copy link
Member

Calinou commented Sep 1, 2021

This is now addressed in the editor by #29297 (further improved by #47813). For projects, this will be addressed by godotengine/godot-proposals#2001.

See godotengine/godot-proposals#942 for pausing animated simulations to save resources in the editor. See also #39758.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants