This week I took a break from the large scale occlusion to experiment with what's called a logarithmic z-buffer. It involves patching our shaders to take better advantage of the z-buffer/depth precision at our disposal. Artifacts caused by our poor use of the z-buffer can be especially visible on ocean water (mostly flat) against the terrain, causing intermittent flicker between both surfaces especially at far:
For similar reasons, using a very wide screen aspect ratio will also trigger all kinds of z-buffer artifacts, including also see-through walls at far, because we're pulling back the camera's near plane to prevent cheating. In our implementation of logarithmic depth, we don't even have a near plane:
Zooming in on a dense building structure may also cause see-through, but this effect is limited by gameplay. These are all issues I'm expecting to fix with this solution and while it's still early to confirm with absolute certainty, the results have been very promising so far.
Unfortunately, however, this process involves patching all our shaders, which might take a while and introduce a ton of new visual bugs. I hope do be done modifying the shaders this weekend to get a solid week of heavy multi-platform testing on the staging branch before next week's deployment.