FFT Ocean Water System

Hello there,
unfortunately, according to the fact that many promising realistic water systems for Unity, which I have bought
(and spent a lot of money on), are deprecated one by one, I have decided to develop my own.
(hoping to finish my game someday, which makes strong use of water simulations)

A prototype already exists (not yet in Unity and also without shaders, but first I was only interested in the wave motion). This water system is programmed with Processing (Java) and is based on a modified Phillips Spectrum for more control over the waves and their direction. The example uses my own FFT routine that has not yet been heavily optimized at this moment.

Here is a Youtube link:

You are welcome to write me what you think about it. The next planned steps are the implementation in Unity with shaders. Many Thanks.

17 Likes

Good luck to you! I will be using Unity 5.6.5, so if you need any feedback, link a file.

Looks amazing!

Looks great! I suggest looking into Campo Santo’s blog how they did all the shading and water interaction. It looks interesting.

Look great, keep up the good work :slight_smile:

This looks amazing! Il be recommending this.

Good luck with the project. I hope it ends for all the beneficiaries.

regards

Looks beautiful. Nice work!

Its a very good first effort. Well done. There is no spray or foam but the dynamics look quite well done. I imagine you have values for roughness of ocean or calmness? If you do get it on the app store quick - so you might make some money.

Meanwhile, my Q - I am after an ocean effect. Do you have day and night (inc moonlight on waves)? and more importantly can you rig the camera for 2D looking top down? Need to see it from birds eye view.

Thank you,

Good luck. It looks promissing. Please, just keep in mind the communication with your followers. Even if you don’t want or can’t keep working on this, just let us know what is happening.

Best regards.

1 Like

Thanks to everyone for the great feedback. While I’m converting the project to Unity (it’s a lot of work ;), here’s a little video by changing some parameters that contribute to the representation of the waves.

( @ : by the way - the top-down view and day-night lighting has nothing to do with the Ocean-Object directly. These things are controlled by the camera-object and the lights in the scene. The Ocean-Object should be treated like any other 3D-Object in Unity can.)

Until then - If any questions arise, don’t hesitate to ask them.

8 Likes

This is an amazing and very realistic work! What is in the To-Do list?

Hi Aquaminator.

What i meant was can you position the camera top down for me. I realise looking at your video youve done it at 1:46min. It looks pretty good.

Hi there,
the first version is running now in Unity, but it’s still very slow - less than half of the frame rate than in Processing.
Why, that what’s I still have to find out, but I’m working on it :wink:

@ : therefore I’ve shown that :slight_smile:

1 Like

Keep in mind, I am not a code person so, comments are meant to be constructive! The video reminds me of Maya Fluid Dynamics, very jiggly and the foam static, Is there a way to animate and sync the UV with the Wave direction?
Perhaps this is something you are already aware of and is on the roadmap. What are the Ocean requirments for the game your making? For me, I mostly need a working underwater.
FEATURE REQUEST

  • Surface

  • Script to change weater (UniStorm, TrueSky, etc.)

  • waves / wakes / Phosphorus (glow) night foam or Decal / Buoyancy

  • Realistic reflections / blur

  • Underwater

  • depth based darkness

  • depth Based Under water Caustics

  • realistic underwater fog distance control

  • particle detritus / surface decals

3 Likes

In addition that, what often seems to be requested in other water systems is (as far as I observed)…

  • Ability to query the water height, in order to implement proper buoyancy

  • Shoreline

  • Water flow direction

  • Ability to add effects to the water, like raindrops and the wake caused by moving water objects

3 Likes

Looks very realistic, good work !

Aquaminator

Perhaps you can look at my water - specifically this problem which i am having with water, or in this case WaterShaders.

Did you get this same problem exporting your water to Unity as i am having with my water?

https://discussions.unity.com/t/708079

Hello, I’ve uploaded a few videos to show the current state

own shader, but until now only Fresnel effect implemented

pure Phillips Spectrum with real-time foam, rendered using the Unity Standard Shader

modified Phillips Spectrum with real-time foam, rendered using the Unity Standard Shader

@ : it’s not that easy to say anything about it just looking at the image - maybe something is not quite right with the surface normals (or the scaling is just too small)

5 Likes

Great work, I hope you are able to work this out. It seems creating an realistic ocean is one of the hardest things to achieve unity.