Although the demo clip feels a bit exaggerated (saying this having over 50k Nm open water ocean sailing in my logbook). Waves that sharp and high would need the wind blowing a lot stronger. But I am sure that is just a parameter adjustment away!
Since it is in Godot I assume the rendering is real time? Does it need a monster GPU?
If you freeze-frame this, the peaking waves look like snow-capped mountains. It feels unrealistic because for water to have features this sharp, it would have to be quite windy -- and the wind would never be blowing straight up. Here, the sharp features would need to be directional.
The simulation has the swell nature of the waves down pretty well though. There isn't as much horizontal movement, as more up-and-down, which is what you'd expect to see in open water.
So for most sea states, this is fantastic. But if you want to do the 'perfect storm' wave or something like that, you need to use a different approach for realism.
Very impressed!
A lot of hobbyist gamedevs can think of tutorials where we "slap noise" on various things. While a good temporary use, there's an pedagogical gap between beginner and advanced methods.
Another that comes to mind is vegetation animation. Like ocean waves, we often see animators throw a few octaves of sin/cos on plants to simulate wind, but because it doesn't spectrally match what we see in the real world, it looks off.
Does it mention what the density of the mesh is, or is it a flat plane with no displacement?
Also, I wonder if there's a way to optimise the foam particles in some way. It does seem very wasteful to generate them across the whole plane, when most are culled. I wonder if the particle emission / creation could be linked to foam density?
Out of curiosity, I’m sure everybody has heard of the FFT. They are quite general and used all over the place, and I imagine they’d be the first thing somebody would reach for if they had to describe waves.
But I’d never heard of Gerstner waves. This leads me to believe that Gerstner waves are a more specialized thing. Since lots of work has already gone into rendering water, I tend to assume the method with a name I’ve never heard of was only reached for after very clever people rejected Fourier transforms for some reason.
But, the results look better than most of what I see elsewhere. Has something changed to enable the more conventional solution?
I struggled in calculus over the summer but passed and am currently taking discrete math but recognized basically none of the math equations in the github project readme.
I did not see any mention of this in the description. Conceivably though, this is not a huge conceptual leap right? A game maker would simply need to add logic to impact the frequencies near objects, no?
Is there something here which godot is enabling which wasn't previously possible? It seems to be entirely GPU compute workload with particles which are available as part of all mature rendering engines
For what it's worth, the real difficulty in gameplay is getting physics objects to interact with the waves properly.
Quick question from my swimming class yesterday: We know that professional swimmers use a range of technologies, both old and new, in their training. Is there currently a model that fully simulates the physics of swimming across different styles? If not, this seems like a great project idea!
Would be curious to see how it looks from different angles etc. as the light changes.
Wonder if they are a student, they seem to cite other work frequently and have a strong grasp on recently published materials.