Ocean Seasons - Another Ocean plugin

The buoyancy support will be as good as the one found in the WIP Community Ocean, meaning you can add buoyancy capability to any actor or static mesh you want, it will not be default (if you turn on physinc on them) for performance reasons and this will be default in the FREE plugin.

Changed status to WIP and gave it a proper name.

Buoyancy per actor is pretty easy by using the queue from the heightfields if you’re using GPGPU FFTs…
FFTs are doable on the GPU with content driven multipass, have done them myself… and actually want to release a mini “plugin” for doing FFT/IFFT so you can convolve to your hearts content.

Nilson you definitely need to show more videos :wink:

The video above is based on the VaPlugin, if anyone want it to mess around it is possible to download it here: as it is also a work done by @EvoPulseGaming , but it will not be used in my asset because it uses NVidia’s code with an EULA which is a bit restrictive to transform in a product able to sell at Marketplace and I want a code that I can distribute as FREE and also enabling people to resell.

The current work is on a OpenGL version for FFT, the code works, but the conversion is a bit tricky. As soon I have a working version that I can at least post the FREE features, rest assured I will post.

Hi. I’ve been waiting for years following all the ocean projects, hoping that one would eventually have all the features and be performant and simple to slip into a project.
My main needs are masking of water for boats, coastline interaction (including wave refraction on beaches) and a realistic wave motion.
I hope yours will fit the bill!

I will not only provide a Full HD video, but also a executable demo showcasing all the features. You will be able to ride a boat, dive with a submarine, see the shore, underwater, and ability to select few presset colors (different aspect of ocean in different parts of the world), walk in 3rd person around, watch the splashes into coastal rocks and cliffs, showing the performance in FPS all the way long. I do want this asset to be Epic!

that sounds kinda expensive :eek:
how many instructions is it by now?

I have a separate group working on the effects while Im still assembling the shaders for the ocean itself (it is not a pure conversion from the OpenGL code, but Im adopting the way the solution was achieved), this information is still not useful, but Im confident the performance will be 130+FPS under Full HD, tesselated and running on a non-oc’ed GTX 1080, since this is almost achievable with the VaOcean plugin mentioned above. The performance gain is on how the infinite ocean will be realized.

I’m very much looking forward to updates on this project. :slight_smile:

Since we are developing everything from scratch on the FFT portion it will take a while. We are doing from scratch because the VaOceanPlugin contains proprietary nVidia code that we could distribute it for free on the free plugin model, but would not allow us to sell it in the premium model we are thinking for the project.

We also want the code to run on Playstation aswel, since we are more confident it will work for XBox for the shared similaries. Hopefully we will bring some update soon, we are just not wanting to show for now something that it will not be for real.

I have setup a Discord server with the link you can find in my signature, join us, chat with us, intention is to provide support, but gamedev chat aswel

Hey Nilson,

Really looking forward to your solution. In the meantime, I wanted to point you to this really interesting video from Ryan Brooks (Tech Artist from Epic). He created a really good-looking ocean shader. Maybe you can reach out and ask how he is doing the water splashes? :slight_smile:

Keep up the good work!

I have seen the video previously since I am one of his followers @shaderbits and that ocean is a Gerstner wave type, not FFT. The crest is a mesh with particle emitters on the mesh vertexes, which is not hard since you can procedurally do the placement at random querying for the wave height. The splashes on the rocks is a bit more trickier, you need to map all the places where you want the splash to occur and query wave height at those locations to spawn a particle emitter once there is a match. The feature need to be balanced and used with caution to not kill the framerate.

That effect in a FFT wave will be so much better, since the shapes are great!

In few more weeks I will have something to show, pictures and videos!

Glad youve seen it - cant wait to see your version :slight_smile:

Great! Subscribed. will definitely buy if this is performant enough for highend VR.
A couple of feature i would love to see:
-Ability to reduce wave hight within an isolated volume
-Animated ripple effects for impacts etc. Doesnt need to be simulated, maybe a pre rendered normal map flipbook spawned by rendertarget or something.

Both suggestions are interesting:

  • wave height reduction in an isolated volume is possible, since the volume would represent a mask considered an aditional signal to convolute with the regular wave set of signals (easier since we using FFT)
  • the ripple effect: where you thinking on character iteraction within the surface? or boats?


The ripple effect would, in my case be used for jumping fish.

So, I am receiving a lot of questions on when the Ocean Seasons will be available and up to now things are a bit slow, mainly because the model I have decided to release the project (a free version and a premium version), meaning a lot of things need to be tested in two separate projects and this results in both ending being released together (I was in hope to deliver the free version earlier), but the good is that I can show both at the same time, release the videos and executable demos giving a great idea of what you will have on each one.

Also, I will have the free version integrated later as an add-on in the @DotCam 's WIP FREE Community Ocean & Weather, and I will (actually am) work together with him to make the integration a good thing and giving everyone the possibility to choose the best looking and with best performance possible for every application.


The final format for the GPU FFT is defined (usable on all platforms, since it does not depend on GPU’s hardware/software specifics) and in implementation in progress. I won’t transform this part of the asset it into a marketplace asset (since there is really none available for free), but it will be flexible enough for any kind of application where FFT can be used.

That said I will probably have a executable demo and some videos to show in the next weeks. The plan is still the same: there will be a free FFT ocean with basic features and it will be integrated into @DotCam 's FREE Community Ocean project, so it will also benefit from others developing it, and later once the Community Ocean is released and everyone can play with it a bit, I will release into the marketplace the premium version.

Stay tunned!