promotional bannermobile promotional banner

Retrium

Retrium is a Fabric client-side performance mod targeting old GPUs stuck on OpenGL 2.1

Retrium v0.1.0 — Initial Release (Minecraft 1.21.1 · Fabric Loader 0.16+)


New Features

  • GL capability auto-detection — On startup, Retrium probes your driver and selects the best available rendering path automatically. No manual configuration required.

    • MODERN (GL 3.3+): mod is inactive, no performance impact
    • LEGACY (GL 2.1 + ARB shader extensions): VBO batching + GLSL 1.20 shader active
    • FALLBACK (GL 2.1, no shader support): CPU-side batching + frustum culling only
  • Chunk batch merging — Multiple nearby 16×16×16 chunk sections are merged into a single VBO and drawn in one call instead of one draw call per section. Targets a 10–20× reduction in draw call count on old drivers where per-call CPU overhead dominates.

  • Frustum culling — A dependency-free 6-plane frustum culler skips geometry that is outside the view before it ever reaches the GPU. Works on all three GL tiers.

  • Legacy terrain shader — A minimal GLSL 1.20 (#version 120) shader for the LEGACY tier: one texture sample, baked vertex lighting, no branching. Designed to spend as few ALU ops per fragment as possible on 15-year-old hardware.

  • Fixed-function fallback path — For drivers with no shader support at all, Retrium still reduces draw calls via CPU-side batch merging without touching the shader pipeline.

  • Tunable config — RenderConfig exposes key knobs for players on constrained hardware:

    • batchGroupSize — how many sections merge per VBO (default: 8)
    • hardCullDistanceGroups — distance pre-cull before frustum check (default: 12)
    • maxBatchRebuildsPerFrame — caps per-frame re-upload cost on chunk edits (default: 2)
    • entityRenderDistance — caps entity render range (default: 32 blocks)
    • disableSmoothLighting — disables MC's AO recalculation, the biggest single CPU cost in chunk building on old hardware (default: on)
    • forceFallbackTier — escape hatch for drivers that lie about their capabilities

Known Limitations

  • The chunk-batching render override (MixinWorldRenderer) is a stub in this release — the GL capability detection and all engine infrastructure is active, but the actual per-frame intercept of Minecraft's terrain draw loop requires mixin targets verified against your specific MC build via genSources. See README_MIXINS.md.
  • No config screen yet — values must be changed in code until a config lib is wired up.
  • GL 3.3+ users see zero effect by design; use Sodium instead.

The Retrium Team

profile avatar
Owner
  • 3
    Projects
  • 1.0K
    Downloads

mod maker

More from Flammex