Soft particles on water shaders, possible?

Hey,

Does anyone know if theres a way to make soft particles work with water shaders?

The particles look great when the water material is replaced with anything else, but the particles appear with hard edges with a water shader.

Heres an example of what it looks like againts a water shader.

Exact same particles appear with smooth particles if the water is replaced with a black mat.

Would still like to know if theres a way to use soft particles againts a water shader, anyone ever tackle an issue like this?

Soft particles use the depth texture for the intersection fading, but transparent shaders like the water don’t write to the depth texture (only opaque object do), so the particles will just be clipped.

1 Like

Would there be any way to trick the effect on a transparent material? Its a shame the particles clip through water likr this.

One way would be to have a custom particle shader which uses a height value for fading out (at water level) + soft particle implementation for opaque objects, but nothing automatic, unless the water is opaque.

If using the Builtin pipeline you could use the GUI/Text Shader which will render the particles above everything.

I worked on a (non-Unity) game once where the water shader, despite being transparent, wrote to depth too. It gave the best set of trade-offs in our use-case.

It meant that shadows would cast onto the surface, but not to the sea/riverbed below.
It also meant that our equivalent of soft particles would work too.

We had to take care when to render it in the scene (it had to be rendered after opaques, but before all other transparents).

Perhaps worth considering.

1 Like