Help

The Advanced page, tune keys and the config file

The Advanced page in Rockstar Shaders lists every constant the shader pipelines read, about 600 keys, each as a name button and a number box, with a search box to filter them. A change is stored as an override in config/rockstarshaders.json and applied when the page closes with Done, which rebuilds the pipelines in about a second. The same keys can be pinned on the Java command line, and two buttons put things back: Clear all overrides on the Advanced page and Reset to defaults on the front page.

I made Rockstar Shaders, and the curated pages hold 82 settings because that is what fits on a screen and has a plain name. The Advanced page is the rest, and it is the ground truth for defaults when a curated page and the shaders disagree.

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 Advanced page shows

One row per key: a button with the key's name and a box with its number. The button's tooltip reads "Default" and the shipped value, and once you have changed it, ", now" and yours. The button itself resets that one key. A changed key is prefixed with an asterisk, and the search box at the top, filter by key..., narrows the list to names containing what you typed. The footer is Clear all overrides and Done. The page is behind Advanced... under Settings on the front page. The keys are generated at runtime from what the pipeline builders read, which is why there are about 600 and why this page, not the curated catalog, is right about a default.

How a tune override applies

Each key is stored as rockstarshaders.tune. and the key's name. Nothing happens while you type; Done applies the lot, and the log says "RockstarShaders reload: rebuilding pipelines" with the generation number going up by one. The header on the front page shows the same number, "Rendering with Rockstar Shaders, pipeline generation N." The rebuild takes about a second, and the water's ripple field restarts from flat. A value set back to the shader default is stored as no override, which is how the file stays short.

If a value makes a shader fail to compile, the log names the pipeline: "Pipeline" and its location "failed to compile", then "RockstarShaders is running with N effect(s) DISABLED because their shaders did not compile". An optional effect switches itself off; only a broken core pipeline stops the pack, and then the header says it is not rendering. The name button puts the key back.

The config file

The file is config/rockstarshaders.json in the Minecraft directory, and the tooltip of the Ray tracing: row on the front page shows the full path. It holds the top-level booleans and numbers from the curated pages, a tune map with only the keys you changed, a props map with the restart-only switches, and a profile field that reads ultra until one of the profile-pinned keys moves. At start-up the log says "settings: loaded N tune override(s) and M propert(ies)" and the path, so you can confirm the file was read.

The first builds shipped as Vitreous. If config/vitreous.json exists and the new file does not, it is copied once and the log says so. A file that does not parse is not thrown away: it is kept beside the fresh one as rockstarshaders.json.bad, with a log line naming it.

The restart-only switches

Nine settings are system properties read once at start-up rather than tune keys, and each says "Restart to apply." in its tip. The screen writes them into the props map and the header reads "A restart-only setting changed: it applies at the next launch." They are Ray-traced shadows, Ray-traced fog, Shadow maps, Shadow resolution and Entity shadows on Lighting & Shadows; Ray-traced reflections on Reflections & Materials; and MetalFX upscaling, MetalFX scale and Entities lit by pack on Performance & Overlays. Their property names begin with rockstarshaders., for example rockstarshaders.rt.shadow and rockstarshaders.shadowAtlas.

Pinning a key on the command line

A JVM argument of -Drockstarshaders.tune.key=value pins that tune key for the session, and -Drockstarshaders.prop does the same for a restart-only switch. The screen shows a pinned setting grayed, with the extra tip line "Set on the command line for this session; the screen cannot move it." The command line always wins over the file. Two more flags exist for bisecting a problem: -Drockstarshaders.rt=false keeps the Metal side-car off, and the log line "Passes switched off by -Drockstarshaders.disable" means a list of passes was disabled that way.

Keys worth knowing

waterWhite, default 0. Foam, aeration, splash crowns and spray are all multiplied by it, so at 0 they are compiled out: the Shore foam % slider on the Water page does nothing and Spray over falls reads Off on a fresh install. Set it to 1 for white water. glassRtReflect, off by default: panes do not request a traced reflection from the side-car, so a window's reflection is the sky and the screen-space trace from the Glass settings. oceanTriplets, a water key: at 0 the water pass at 1706x1966 on the M4 Max went from 8.67 to 8.84 ms down to 7.27 ms. And every key in the profile table on quality settings is here too, with the same defaults as its category page. Settings can move between builds, so a key's default today may not be its default next month.

Putting it all back

Clear all overrides on the Advanced page forgets every tune override in one go. Reset to defaults on the front page does the same and sets the profile field back to ultra. Neither touches the restart-only switches, which keep their value, so a Shadow resolution of 2048 survives a reset until you change it. A command-line pin survives both, because the file cannot override the JVM. If the file itself is the problem, the .bad copy is what the mod leaves for you to read, and the troubleshooting page lists the log lines to look for.

Download free (1.0.0) Modrinth (pending)Minecraft 26.3, Fabric, macOS on Apple silicon. Install guide. Releases and bug reports on GitHub.

About the author. Ryleigh Newman wrote Rockstar Shaders and every page on this site. Facts about other packs and programs come from their own sites, with the date they were read. More about the project.

Related

Questions

Where is the Rockstar Shaders config file?

config/rockstarshaders.json in the Minecraft directory. The tooltip of the Ray tracing row on the settings front page shows the full path, and the start-up log names it.

Do I need to restart after changing a key on the Advanced page?

No. Done rebuilds the shader pipelines in about a second. Only the nine restart-only switches, the ones whose tip says Restart to apply, wait for the next launch.

Why does the Advanced page show a different default from a category page?

The Advanced page is generated from what the shaders actually read, so it wins. Spray over falls is the known case: the Water page declares On, the shader default is Off because waterWhite is 0.

Why is a setting grayed out?

The game was launched with that key on the command line, as -Drockstarshaders.tune.key=value or -Drockstarshaders.prop, and the screen cannot move it for the session. Check the launcher's JVM arguments.

What does the asterisk before a key mean?

You changed it. The tooltip shows the default and the value now, and the name button resets that one key.

Will my old vitreous.json still work?

Yes. If config/rockstarshaders.json does not exist, the old file is copied to it once at start-up and the log says it was migrated.