Terrain Water Transparency

As a Roblox developer, it is currently too hard to keep terrain based water convincing with varying quality levels. This is due to the fact global water transparency settings aren’t respected under graphics quality level 8.

My preferred outcome would be to have water always respect global transparency settings under all quality levels. Refraction and reflections aren’t of big concern to me, as water should almost always be transparent. Currently, it will switch all water in the map to an ugly opaque. I will detail it in images below.

This is with quality level 10:

This is with quality level 7:

If Roblox is able to address this issue, it would improve my development experience because:

  • I would be able to show underwater features without players having to put their camera underwater (pool water should never be opaque)

  • I would not have to opt to use meshes with bones to achieve my desired outcome (heavier performance tax)

  • Terrain’s flexibility is very useful (if I am able to use it how I prefer)

  • I can maintain the style of my game however I so choose

  • I would not have to ask players to change their quality level to enjoy my game

Thank you for your time!

30 Likes

FWIW, transparent surfaces are taxing to render. This is likely why the surface goes opaque at lower quality levels currently. It’s likely you’ll have similar performance impact because of all the transparency/refraction of water.

4 Likes

I understand that, but there really needs to be finer control over this. I shouldn’t have to use workarounds when Roblox offers an almost viable option. Having water transparency be always respected is far less resource intensive compared to all the workarounds I would have to do apart from visually. Having water be a fully viable option for me would mean I wouldn’t have to do client side code for controlling waves, and wouldn’t have to apply a homebrew water physics system to every part that comes in contact with it.

Devs should have full control over how an end user sees their product. I don’t like how fragmented the experience would look for different users. Not to mention how it would have an impact on game features that are to assume water is always able to be seen through.

I’m working on a new pool that has details around the walls that would otherwise be hidden at lower graphics levels. That, and players wouldn’t be able to see diving sticks and other pool toys they drop unless their graphics are at 8+.

There has to be some sort of trade off for them to get this to work, even if it means allowing devs to force water’s (or any object) quality level.

5 Likes

Hey if you’re also experiencing shortcomings when it comes to the physics and behavior of Smooth Terrain Water in Roblox, I’d ask that you take a look at this feature request here.

As far as the transparency goes, I usually just do a height scalar factor and change the transparency of the water the deeper you go. Of course, this doesn’t work for devices that use a lower quality setting. I agree that you should be able to expect the same behavior on all quality levels regardless of the device. And if there are performance impact issues then these should be optimized. Leaving it as it is currently because they would like to release a more optimized version is what I consider personally to be releasing a “half-baked feature”.

The fact of the matter is, as part of Roblox’s vision. Water quality settings should behave the same across all quality levels. A reduction in quality for better performance should be done with minimum impact to the ending result. If quality levels are sporadic and unpredictable then how can one work with it?

3 Likes