SciCraft/docs/performance.md
MiTHRAL 3d76c0e059
All checks were successful
Build & Release Pack / build (push) Successful in 1m39s
feat: three-tier performance presets (Low/Medium/High) for client + server
Add drop-in performance presets tuned for three hardware tiers.

Tier targets:
- Low: 4GB VRAM/iGPU, 8-16GB RAM
- Medium: RX 580-class 8GB, 16-32GB RAM (shipped as pack default)
- High: RTX 3060+ 8GB+, 32GB+ RAM

Client configs (per tier, presets/<tier>/config/):
- sodium-options.json: chunk threads, cpu render-ahead, quality
- iris.properties: shaders on/off, max shadow render distance
- lambdynlights.toml: dynamic lighting mode + adaptive ticking
- entityculling.json: culling tracing distance
- cullleaves.json: leaf culling
- soundphysics.properties: reverb/ray budget (CPU cost)
- flywheel-client.toml: Create backend (BATCHING vs INSTANCING)

Server configs (per tier, presets/<tier>/server/):
- server.properties: view-distance, sim-distance, players, compression
- jvm-flags.txt: heap + G1 GC flags per RAM tier

Medium configs also copied to client_pack/config/ so they ship as the
mrpack defaults (bundled into overrides/config/).

Docs: docs/performance.md + docs/server.md rewritten for three tiers;
presets/README.md explains how to apply each tier.

Default (Medium) enables shaders with INSTANCING flywheel on the 8GB GPU
tier; Low disables shaders + uses BATCHING for maximum FPS on weak GPUs.
2026-08-19 23:27:45 -04:00

67 lines
2.6 KiB
Markdown

# Performance — Client
Three drop-in tiers are provided: **Low**, **Medium**, and **High**. The
**Medium** tier ships as the pack default (matches a Ryzen 5 5600X / 16-32 GB
RAM / RX 580 8 GB machine). Full details and copy commands live in
`presets/README.md`.
| Tier | Target | Shaders | Render distance | Key trade-offs |
|------|--------|---------|-----------------|----------------|
| **Low** | 4 GB VRAM / iGPU | **Off** | 4-6 | Minimal effects, most CPU headroom |
| **Medium** | 8 GB VRAM (RX 580-class) | On (Complementary, Performance) | 8 | Balanced 60 FPS — **default** |
| **High** | 8 GB+ VRAM (RTX 3060+) | On (Complementary, Ultra) | 10-12 | Max visual quality |
## Applying a tier
```bash
# client configs → instance config dir
cp -r presets/low/config/* ~/.local/share/PrismLauncher/instances/<instance>/minecraft/config/
```
Restart the game after copying. See `presets/README.md` for the full file map.
## What each tier changes
| Config | Low | Medium | High |
|--------|-----|--------|------|
| Sodium chunk threads | 1 | auto | auto |
| Sodium cpu render-ahead | 1 | 3 | 4 |
| Sodium quality | FAST | DEFAULT | DEFAULT |
| Iris shaders | **off** | on, shadow 32 | on, shadow 64 |
| Dynamic lights | simple | fancy | fancy (max) |
| Entity culling distance | 64 | 128 | 192 |
| Sound reverb rays | 16 | 24 | 32 |
| Flywheel backend | BATCHING | INSTANCING | INSTANCING |
## Shader tuning (Complementary Reimagined r5.4)
Shader loader is **Iris** (native NeoForge). Recommended shaderpack:
**Complementary Reimagined r5.4** (`client_pack/shaderpacks/`, see README).
In-game (`Esc → Options → Shader Packs → Complementary → Shader Pack Settings`):
### Medium (8 GB VRAM)
- Preset: **Fast / Performance**
- Antialiasing: OFF, SSAO: Fast, Shadow Quality 1.0x
- Shadow Distance: 64, Bloom: Low, Clouds: 2D Fast
- Water Reflections: Screenspace Fast, Colored Light: OFF
### High (8 GB+ VRAM)
- Preset: **High / Default**
- Antialiasing: OFF or FXAA, SSAO: High, Shadow Quality 1.5x
- Shadow Distance: 128, Bloom: On, Clouds: 3D
- Water Reflections: Screenspace, Colored Light: On
### Low (no shaders, or "Potato")
- Play with shaders **off** (Iris `enableShaders=false`).
- If you want them on, use Complementary "Potato/Ultra" preset, shadows OFF.
If FPS is still low, lower Shadow Quality / disable Bloom before touching
render distance.
## Reload rules
- Server scripts / recipes / advancements: `/reload`
- Client tooltips / JEI / textures / lang: `F3+T`
- New items/blocks (`registry_blocks.js`): **full restart**
- Config files (Sodium, Iris, etc.): **full restart**