The call was commented out on 1.21.6+ (#30). From 1.21.6 CubeMapRenderer draws from one cube map texture instead of six face textures, and it crashes ("Texture view does not exist") if that texture isn't loaded. Saturn's preload registered the six faces, and the vanilla registerTextures only stores the cube map for the next resource reload, which has already run by the time preload does. - preload registers a CubemapTexture for the panorama through the TextureManager overload that loads it immediately, on 1.21.6+. Before 1.21.6 it registers the six faces as before. - The panorama is only drawn once preload has run, which also covers the splash overlay drawing the title menu on its first frames. - 1.21.6+'s RotatingCubeMapRenderer.render has no opacity, so the panorama is fully opaque there. The background blur stays 1.21.5-only (TODO, #23). Co-Authored-By: Claude Opus 5.5 <[email protected]>
Saturn Client
A free and open-source Minecraft client.
Built with performance, customization, and community in mind.
About
Saturn Client is a free, open-source Minecraft client designed to enhance the gameplay experience while staying lightweight and customizable. Our goal is to build a clean, optimized client that the community can contribute to and improve together.
Saturn runs on Fabric and supports Minecraft 1.21.4 to 1.21.11, with one build per version. If something doesn't work on your version, please open an issue.
Features
- Free cosmetics that don't require real money: cloaks, including animated ones, and hats
- 18 built-in mods: Armor Display, Auto Sprint, Clock, Coordinates, Crosshair, Day Counter, FPS Display, Freelook, Fullbright, Health Display, Keystrokes, Nametags, No Fog, Ping Display, Speedometer, Status Effects, TPS Display and Zoom
- Clean and modern UI with animations
- Ongoing performance improvements
- Open-source and community-driven
Installation
- Install Fabric Loader and Fabric API for your Minecraft version.
- Download the Saturn Client jar for the same version from Modrinth or the releases page.
- Put it in your
modsfolder.
Network use
For cosmetics, Saturn Client connects to the Saturn server (saturn-server.selimaj.dev). You're signed in the same way as on an online-mode Minecraft server: your client proves who you are to Mojang's session server, and the Saturn server asks Mojang to confirm it. Your Minecraft access token is only ever sent to Mojang, never to the Saturn server.
Building from source
The version-independent code lives in the common submodule, so clone with submodules:
git clone --recurse-submodules https://git.selimaj.dev/saturnclientmc/saturnclient.git
cd saturnclient
./gradlew buildAll # every version → build/allJars/
./gradlew :1.21.11:build # a single version
./gradlew :1.21.11:runClient # launch a development client
Building needs Java 21.
Contributing
We welcome contributions of all kinds:
- Code improvements
- Bug fixes
- UI enhancements
- Cosmetic designs
- Suggestions and feedback
If you're an artist or designer interested in helping with cosmetics or visual assets, we'd love to collaborate.
Most features belong in common, which every Minecraft version shares. For code that differs between versions, see the version guide: it covers how the versions share one copy of the code with Stonecutter, writing version-specific code, and adding a new Minecraft version. Every pull request is compiled for all versions automatically.
Credits
- Cloak Rendering:
IIpho3nix& Saturn - Who Am I:
FokshaWasTaken - Panorama: https://www.planetminecraft.com/texture-pack/minecraft-cavesand-cliffs-part-ii-main-menu-panorama/
If any code or assets belong to you and you would like them removed, please open an issue. We aim to properly credit all contributors and respect original creators of their respective art.
License
Saturn Client is free and open-source under the Apache-2.0 license.
Made with ❤️ by the Saturn Client team

