Help
The Water page
By Ryleigh Newman · Published
The Water page in Rockstar Shaders has 10 settings for the water engine: the wave ladder, the ripple simulation, the screen-space reflection, falling water and its spray, shore foam and surf. All ten are tune settings, applied when you leave the page with Done, which rebuilds the shader pipelines in about a second.
I am Ryleigh Newman and I made Rockstar Shaders because the water I wanted in Minecraft only existed in packs made for Windows, and I play on a Mac. The water is the most expensive pass in the pack, so this page says what each setting does and, where I have a number, what it costs.
Download free (1.0.0) Modrinth (pending)Minecraft 26.3, Fabric, macOS on Apple silicon. Install guide. Releases and bug reports on GitHub.
What the water engine does
Water is a forward-rendered surface with its own engine. The wave spectrum is a directional wind-driven ladder: up to five wind-sea rungs plus a detail band of up to three finer rungs, fetch-limited by a top-down map of how much open water surrounds each point, so a pond carries ripples and an ocean carries swell. A simulated ripple field sits on top for rings, wakes and foam. Reflections come from a screen-space trace, with the Metal ray trace covering what is off screen. The rest has no switch here: screen-space refraction, a Beer-Lambert water column tinted by biome, sun glitter, chromatic dispersion, ice as a dielectric slab, Snell's window from under the surface, analytic caustics on the bed and on the eye, and far water that keeps its bed color. Sea grass sway is on Foliage and Weather and the underwater god rays are on Fog and Volumetrics.
The wave ladder
Wave octaves is the number of wind-sea rungs, 5 by default, from 2 to 5. Five is the calibrated sea; fewer is cheaper and smoother. Detail rungs adds the propagating rungs below 0.84 m, the 5 to 50 cm ripples: 3 by default, from 0 to 3, and 0 removes them. Parallax steps is the ray march through the wave heightfield that lets crests occlude troughs, 12 by default, from 0 to 16; 0 is flat.
The ladder does not know how big your water is; the fetch map does, and it has no setting.
The ripple simulation
Ripple simulation is on by default. It is a simulated field, 512 cells of 6.25 cm, 32 m across and centerd on the camera, advanced by the damped wave equation. It carries rings from rain, falling water, the player and boats, plus wakes and foam, though the foam is compiled out at the shipped defaults (see below). The field sleeps 18 seconds after its last disturbance, and that matters: integrating a flat surface cost 3.4 to 4.0 ms a frame at the sunset-bay pose on the M4 Max, and asleep it costs 0.00 ms. When the settings screen rebuilds the renderer, the field restarts from flat, so a tune change on any page clears every ring for a moment.
Reflections
Screen reflections is on by default and mirrors what is already on screen in the water surface. What is off screen comes from the Metal ray trace, one mirror ray per water pixel, and that switch is Ray-traced reflections on Reflections and Materials. Far water mirrors the shore to about 240 blocks. Whether the cloud deck appears is Clouds in reflections on Sky and Clouds. Turning the screen trace off saved about 1 ms of the water pass in the measurement below; turning the ray trace off made the frame slower, not faster.
Falling water, spray, foam and surf
Falling water is on by default: ropes, streaks and aeration on falling sheets and cascades, drawn as a flowing, tinted, distorting column with a plunge pool under it. At the shipped defaults it is a clear column, not a white curtain, for the reason below.
Foam, aeration, splash crowns and spray are compiled out by default: every one of those terms is multiplied by an Advanced key, waterWhite, which ships at 0, the no-white look I chose. Two settings here depend on it. Shore foam %, 25 by default, from 0 to 100, does nothing until waterWhite is 1. Spray over falls takes its default from waterWhite, so a fresh install shows it Off even though the catalog declares it On; turning it On works by itself, and Spray strength %, 25 by default, then sets how dense the mist is. Set waterWhite to 1 on Advanced if you want the white.
Surf amplitude is the roller that runs up a beach, in meters: 0.045 by default, from 0 to 0.20. Shorelines carry a depth-field surf that shoals and breaks toward the beach; this is its height.
What the water costs
One machine, an Apple M4 Max with 48 GB, at my window size of 1706 by 1966, looking down at a sunset bay. The water pass took 8.67 to 8.84 ms of that frame, more than any other pass. One change at a time:
| Change | Water pass |
|---|---|
| Shipped defaults | 8.67 to 8.84 ms |
| oceanTriplets 0 (an Advanced key) | 7.27 ms |
| Screen reflections off | 7.81 ms |
| Detail rungs 0 | 8.02 ms |
| Wave octaves 4 | 8.20 ms |
| Parallax steps 0 | 8.40 ms |
The bigger lever is not on this page. Render scale at 75%, the default, took the whole frame from 44.98 to 33.95 ms at that size, more than any water knob. It is on Performance and Overlays, with Show pass timings, which prints the water pass for your own scene.
Every setting on the page
| Setting | Default | Range |
|---|---|---|
| Wave octaves | 5 | 2 to 5 |
| Detail rungs | 3 | 0 to 3 |
| Screen reflections | On | On or off |
| Ripple simulation | On | On or off |
| Falling water | On | On or off |
| Spray over falls | Off (follows waterWhite) | On or off |
| Parallax steps | 12 | 0 to 16 |
| Shore foam % | 25 (needs waterWhite 1) | 0 to 100, step 5 |
| Surf amplitude | 0.045 m | 0 to 0.20, step 0.005 |
| Spray strength % | 25 | 0 to 100, step 5 |
Reset to defaults on the front page forgets every override at once, waterWhite included. If the water looks wrong rather than different, the checks are on Troubleshooting.
Download free (1.0.0) Modrinth (pending)Minecraft 26.3, Fabric, macOS on Apple silicon. Install guide. Releases and bug reports on GitHub.
Related
Questions
Why is there no foam or white water on my shores?
Foam, aeration, splash crowns and spray are compiled out at the shipped defaults. The Advanced key waterWhite is 0, and every white term is multiplied by it. Set it to 1 and Shore foam % starts working.
Why does Spray over falls show Off when the default is supposed to be On?
Its default follows waterWhite, which ships at 0, so a fresh install reads Off. Turning it On works on its own, and Spray strength % then sets how dense the mist is.
The ripples disappeared after I changed a setting. Is that a bug?
No. A tune change rebuilds the shader pipelines, and the ripple field restarts from flat when that happens. Rain and movement fill it again.
Which water setting saves the most time?
In my measurement at 1706 by 1966 on the M4 Max, the Advanced key oceanTriplets at 0 saved the most on the water pass, then Screen reflections off, then Detail rungs 0. Render scale on the Performance and Overlays page saves far more than any of them.
Does the water reflect things behind me?
Yes, when Ray-traced reflections on the Reflections and Materials page is on. The screen trace covers what is on screen and the Metal trace covers the rest, one mirror ray per water pixel.
Where is the setting for god rays under water?
Underwater shafts, on the Fog and Volumetrics page: 3 by default, from 0 to 6.