Git Product home page Git Product logo

Comments (7)

QuinnLeavitt avatar QuinnLeavitt commented on August 16, 2024 1

Once asynchronous gpu readbacks get implemented into godot it might help with the jitteriness of buoyant objects as explained by acerola in his buoyancy video

from godot4-oceanfft.

Tattomoosa avatar Tattomoosa commented on August 16, 2024

Could you share your settings/OS/render mode? I'm not getting any jitter if frameskip and heightmap sync frameskip are set to 0, and only getting the amount of jitter I'd expect to see with those settings increased.

from godot4-oceanfft.

lw64 avatar lw64 commented on August 16, 2024
Bildschirmaufzeichnung.vom.2024-02-13.22-03-56.webm

This is the latest commit on devel. I also have frameskip and heihgtmap sync set to 0. I reduced the lods to 1 to get acceptable fps.

from godot4-oceanfft.

lw64 avatar lw64 commented on August 16, 2024

I use Linux/integrated graphics, so I only got ~25fps, but that shouldnt affect the waves.

from godot4-oceanfft.

tessarakkt avatar tessarakkt commented on August 16, 2024

I think that may possibly be Z-fighting, the cameras in the example scene have a very large range (near 1.0 far 16000.0) which would make that likely to happen.

If you lower the far plane on the camera, does that reduce this flickering?

from godot4-oceanfft.

tessarakkt avatar tessarakkt commented on August 16, 2024

I've finally had a chance to sit down and investigate this closer, and it's definitely not Z-fighting. It's also noticeable on Windows 10 with a Radeon 6700.

It appears to be the result of the ocean simulation being out of sync with the buoyancy/physics system. If I run on a strong enough computer to reach 60fps, Vsync enabled, and 0 simulation and height map sync frame skips, then the ocean simulation is in sync (or near enough) with the physics system, the jitter is not noticeable.

If the Ocean TPS counter in the example scene is either above or below 60, the jitter becomes noticeable. Possibly because the height map is getting updated by the compute shaders on the render thread when the physics thread is trying to use it.

So the solution here is likely to make the height map sync in the render thread happen in sync with the buoyancy calculations in the physics thread, ideally without a significant performance impact.

from godot4-oceanfft.

lw64 avatar lw64 commented on August 16, 2024

Also setting the "maximum physics steps per frame" godot setting to 1 helped for me a bit. I tried once to get the wave height of buoyancy probes in _process(), store them, and access them later in _physics_process(), but that didnt seem to work (maybe I did it wrong though)

from godot4-oceanfft.

Related Issues (14)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.