Invisible vertices at some angles

I have a strange problem with my water shader. I’m using gerstner waves for vertex displacement, and this works mostly fine, but at some angles some vertices disappear.

Here’s a video of the problem:

I’m using a surface shader with tesselation for the effect, but the same problem was also prevalent when using shader graph.

Does anyone know how to fix this?

Correct and efficient rendering of real time transparency is an unsolved problem.

Usually I link to my old post here on the forums where I talk about it, but instead I’ll post a link to another forum where I talk about this exact case of water waves overlapping weirdly, and possibly solutions.

Excellently written post, thank you. I think the pre-pass might be what I’m looking for, as I’m not plannig to have any other transparent objects in the water (as of now at least, I’ll leave that headache for the future…).