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

Vulkan: FogVolume with volumetric fog temporal reprojection enabled causes the editor to redraw continuously, wasting CPU and GPU resources #54893

Open
Tracked by #69579
Calinou opened this issue Nov 12, 2021 · 0 comments

Comments

@Calinou
Copy link
Member

Calinou commented Nov 12, 2021

Godot version

4.0.dev (c89061e)

System information

Fedora 34, GeForce GTX 1080 (NVIDIA 470.74)

Issue description

Related to #54892.

If at least one FogVolume node is visible in the scene tree, the editor will redraw continuously when volumetric fog and temporal reprojection are enabled. This wastes CPU and GPU power, which in turn harms the project's performance when run from the editor and decreases battery life on laptops.

We should use the temporal reprojection setting to determine at which point redrawing is no longer necessary. With the default value of 0.9, there is most likely no meaningful visual difference after 20 frames of convergence or so. (At higher values, we need to wait for more frames for volumetric fog to mostly converge.)

Notice the update spinner in the top-right corner:

fog-volume-visible-constant-editor-redrawing.mp4

Steps to reproduce

  • Enable Show Update Spinner in the Editor Settings.
  • Add a WorldEnvironment node with a Environment resource.
  • Enable volumetric fog. Despite temporal reprojection being enabled, the editor will only redraw when needed. (This can cause fog to become outdated like in Vulkan: SDFGI does not make the editor redraw until it has fully converged #54892, but this is what we're aiming to resolve here too.)
  • Add a FogVolume node. Notice how the editor starts redrawing constantly, even when nothing on screen has changed.
  • Toggle the FogVolume node's visibility. Notice how the editor no longer redraws constantly when the FogVolume node is hidden.

Minimal reproduction project

test_fog_volume.zip

Keywords for easier searching: low processor mode, low-processor mode

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

2 participants