Ocean Seasons - Another Ocean plugin

Hey NIlson,

Good to hear its coming along nicely. Could you also have a standalone version of your ocean (not tied to the Community Project)? I think a lot of us just want the ocean and not the weather / extra stuff from the other project. Please consider it :slight_smile:

Since it is a plugin, per the marketplace rules I can put it for free, so I will do it !

Hey @NilsonLima,

Any updates you can share? I saw your video from March and its already looking good. Any new videos you can share for us that canā€™t wait? :slight_smile:

In about a week I will have a new video with current status. It is now on a tweak status because along with the video I want to release a small executable for people to feel the performance it is achieving. I will have the waves with foam, shore, with amplitude and wind conditions to be changed during execution and a very wip postprocess for underwater conditions along with a cool set or islands with a cloudy sky mid afternoon, so will be possible to see the cloud and sun reflections at the ocean.

I see that you are already at DotCamā€™s Discord server, so you will also see me posting there when it is released or if you are subscribed in Youtube you will receive notification aswel!

Good to hear - will keep an eye out for your demo :slight_smile:

Some updates, but the work is still very in progress :wink: The most difficult part is to take full advantage of compute shaders parallelism and also I want a generic FFT compute shader, so far it is not optimal and I think I will still be able to squeeze +50 FPS out of it at Epic settings ā€¦ moving to around 130 FPS with a stock GTX 1080!

Niceā€¦ keep it wavinā€™ :wink:

I am studying a way to have a blueprint version for this aswel, its not like 100% certain, but for some users not fond of C++ plugins might find it useful too. If I succeed, it is expected a bit less performance, but the maintainability would be great among different engine releases, which is what people who cares for it being in blueprint only want. It will not be like I will pull out my hairs to make it work, because I need to release this beauty and the bp version can come some time after, I just want to make a good use of my time :slight_smile:

I think some things shouldnā€™t be implemented in Blueprintā€¦ And it will only make it more difficult to maintain the asset pack, as you would make the same changes in both, the BPs as well as the C++ code. Even if using Blueprints works now, you might run into limitations imposed by Blueprints in the futureā€¦ (though thats very unlikely)

Once I have it figured out, I will surely take into account the difficult in maintenance.

Hey @NilsonLima, I just switched from Unity to Unreal, mainly because of performance and engine builtin features and am currently in the process of getting together all the assets that I had already in Unity again that I have on my projects feature list. One of them is ocean water, and knowing now the story behind and alongside the Community Ocean here (just finsihed reading the old thread - last half of it that is) and living through the Playwaywater/Ultimate Water debacle in the Unity world, i must come to one conclusion: Water assets are cursedā€¦ CURSED I tells you! Maybe itā€™s Posseidon that demands it. Nobody every thought of that?
Jokes aside, I put high hopes into your work and Iā€™ll be happily paying what ever youā€™ll be calling for it.

There are two missing features in your list that I already had in Unity and that I would badly miss: water translucency for light shining through waves and from underwater pointlights for example, and water surface decals for things like rubish, a thin foam (algea etc.) layer, blood and things like that. Maybe you already got that in your internal list or even as a feature, but I still wanted to make sure to mention it.
Looking forward to your first release. Never lose hope and donā€™t let those cranks rain on your parade. There will always be some, itā€™s just (a sad) part of human reality.

EDIT: Three features actually, just remembered force on physics actors in wave direction.

@HaBe2305 Yeah, they must be cursed! Water/Ocean shaders are just so hard to make properly and the cost of performance to have it as jack of all trades is too troublesome. My goal is to release it with several features that you can easily turn off to gain that extra performance when it is needed, even if thats for a few (0.2 ms value in average saved in 10 features turned off is just 2ms saved overall). Since in about to release several other assets, I had to hold this for while for others projects I am almost about to release in the marketplace (I do work on several projects at once because I get tired/bored working on the same thing for hours).

The Community Ocean is likely to receive the free portion of this project (there will be a free and a premium version), but there will be other contributions on that project aswel that would make it pure beauty, but with less features, while mine would actually be pretty but with more features.

Since the engine is undergoing huge modifications on the rendering module, it is expected that this causes for now many changes on my project, which I will anticipate before releasing it, otherwise it might be just too chocking for the users, which I know will get crazy with bugs, so better avoid it. I would really like to have it released this year, but the engine changes that actually will impact it might come sometime near January/February, so rush now wonā€™t be good at all.

Glad to hear Iā€™m not the only one, Iā€™m working on several prototypes in parallel as well, because of the same reason.
Thanks for the info, totally understand that. So the engine currently is in a transition phase so to say?
Then Iā€™ll go with Community Ocean for now so I have an Ocean to build upon already. How should I go about giving back if I fix something for example btw? Are pull requests still actively managed?

The main transitions in the engine is to bring the full RTX/DXR (with multi gpu support) fully released in the main branch, so everyone can grab the source, which will support all the features being shown lately in several conferences (GDC, Siggraph), so many things related to lighting might change aswel.

For now, Im not dedicating my time anymore to the Community Ocean, so as the creator DotCam is MIA somehow, we canā€™t manage the pull requests, which ahead we might think on creating another repository if we can get any news about DotCam. So, for now Im prioritizing the release of my assets to get my hands exclusively in the Ocean Seasons, which my cross development stage for Sky Seasons which is a plugin similar to TrueSky technically speaking (voxels), but the ways to use it resembles more my Cloudscape Seasons.

How I toggle on and off the text that appears in the lower right side of the monitor screen (e.g., Press ā€œKā€ to suicideā€ etc), during game mode. Thank you.

Understood. Thanks again for the info.

Very good to hear about Sky Seasons, I already had something similar in Unity. Are you also aiming for achieving those features like realistic god rays (like shining through openings in the clouds that the camera itself canā€™t see) or rain fronts near the hironzon, so that it would be possible to have different wather zones with one sky actor? No matter what sky component Iā€™ve tried yet, the sky always felt too uniform in terms of visual quality that I would like to see. But Iā€™m also enough into gfx programming that I know itā€™s not a trivial thing to achieve.

Please feel free to PM me as soon as youā€™ve released any of your assets, Iā€™ll be happy to evaluate them.

I have been following closely the most difficulties people have with the free community ocean and one of the most issues is that people like it, but they also like TrueSky, which has issues with rendering on top of translucency. TrueSky provides a node to use within a translucency material to grant it will receive the sky reflections, but sometimes depending on how the scene and other translucent materials are present into the scene, it might completely block TrueSky or TrueSky will be rendered on top of things it shouldnā€™t. I have made Cloudscape Seasons with the thought that since it is a special, but in fact ordinary material which just uses raymarching, it would be reflected into the scene no matter which type or the amount of translucent materials are present, but the main issue with Cloudscape Seasons is that for it to look really good on all angles, distances, bellow and on top, it suffers great performance penalties, so added to a ocean shader you might endup with a scene which is not suitable for gaming, at least in terms of high framerates, but still usable for film. With that in mind I decided to implement another solution for clouds, which is better looking, better details, can have reflections on all types of materials including translucent ones, and it might impact a little bit the release for this Ocean Seasons asset, but I will be sure both solutions would co-exist before launching them.

Soo, does this mean the ocean wonā€™t be compatible with TrueSky? Or will there be a limited compatibility?

The major problem is that TrueSky does its thing outside the way the rendering works inside the engine, while you can have translucent material able to cast a shadow, TrueSky is not a material applied into something, it resembles more a postprocess implemented into a plugin, so it has its own skylight, its cloud shapeā€™s data is used to alter how the shadows affects the environment changing the colors onscreen, and since this work depends on the pixel depth, its major issues are exactly with translucent materials applied into the world, where it is difficult a common solution to know where each objectā€™s position are in relation to each other, unless you classify one by one giving an order of priority which is supported by the engine. So, Simul knows this is an issue with TrueSky and they decided to implement their own ocean, so they can deal with such issues easilyā€¦ and I will do the same, because this is the best way of doing it. Now the thing is, my Ocean will look better, and my cloud system will look better than theirs, but both will not have the same performance as theirs, but with the method I will use for my cloud/sky system, which is nothing related to theirs, it will still be usable for games and i can guarantee the clouds will work with any kind of translucent material on the scene.

With all that said, it might occur that this ocean does not work with TrueSky, I will even try, but it is not guaranteed it will. Btw I have just started the whole study on cloudscape systems like the one in Horizon: Zero Dawn, because TrueSky didnā€™t work with Community Free Ocean, back there two and half years agoā€¦ and still doesnā€™t work and wonā€™t.

Well, if the sky is going to look like the one in Horizon: Zero dawn and even better than TrueSky, then I am all in!