HomeJavaShadersJustwaves
Justwaves

JustWaves 0.7 — what it is

(it is compatible with any version iris is compatible with)

A shaderpack that only touches water. No shadow pass, no deferred lighting, no bloom, no colour grading. Everything that isn't water renders exactly the way it does with shaders off, so this drops on top of any resource pack or modpack without changing how the rest of the game looks. Iris or OptiFine, Minecraft 1.21.x.

It's one program. gbuffers_water. That's the whole pack.

Waves

The waves are Gerstner, not plain sine waves. The difference matters: a Gerstner wave drags the surface sideways as well as up and down, so it bunches up under the crest and stretches out in the trough. That's what gives you sharp peaks with wide flat gaps between them instead of a rolling bedsheet.

Six components stacked on top of each other, biggest and slowest first, each one after that shorter and faster. Wavelengths land around 12, 9, 6 and 4 blocks, which is a size you can actually see standing on a boat. The directions are deliberately ugly numbers so the pattern takes a very long time to visibly loop.

Because the displacement only depends on world position, neighbouring blocks always work out the same answer and the surface never tears at the seams.

Rain pushes the waves up. Flowing water gets calmed right down by default, because a stream does not have an ocean swell running through it.

Beaches

This is the part I'm actually pleased with.

A shader has no idea where the land is. It can't look up blocks, nobody hands it a map. What it can do is ask the depth buffer how far away the solid ground behind this pixel is — that's already been drawn, before any water was. Subtract this pixel's own distance from that and you get the thickness of water sitting in front of the sea floor.

That one number is the entire beach system:

Surface

Sky reflection that washes towards fog colour near the horizon, which is what makes distant water go pale and bright. Fresnel, so water seen along its own surface acts like a mirror. A tight sun glint that mostly disappears in rain and goes dim off the moon. Troughs sit in shadow, wave backs catch the light. Whitecaps on the very tops of crests, and only with weather about.

Underwater you get bright bands where the surface curves and focuses the light, and it turns silver when you look along it. That's total internal reflection, and it's genuinely why the underside of water looks metallic.

Tides

A slow lunar tide. Spring tides at full and new moon, neaps at the quarters, exactly like the real thing. Kept small enough that the sea never climbs out of its own block and leaves a gap at the shore.

Settings

Five option screens in the shader menu — Waves, Beach, Surface, Tides, Troubleshooting — and three profiles. LOW strips it back to plain moving water. HIGH turns everything up.

Two switches worth knowing about under Troubleshooting:

Quick facts

Install steps are the general flow for this file type — see the MC Java Mods guides for the full walkthrough.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more