
Circular Rendering
A Fabric mod that changes the vanilla rendering method to 3D spherical rendering.
About this Mod
Circular Rendering
English | 中文
This is a Fabric mod that modifies chunk rendering to a circular (or elliptical) shape around the player.
By default, it renders chunks within a perfect circle (radius = view distance × 16 blocks).
You can optionally scale the left/right radius to create an ellipse, culling more chunks to the sides while keeping forward/backward visibility unchanged. This reduces GPU load and improves FPS without affecting gameplay mechanics.
Features
- Renders chunks in a circle centered on the player (default behavior).
- Optional elliptical rendering: the forward/backward radius remains fixed, while the left/right radius is scaled by a configurable factor (
renderRadiusScale).- When
renderRadiusScale = 1.0, it's a perfect circle. - When
renderRadiusScale < 1.0, it becomes an ellipse (narrower left/right).
- When
- Optional vertical range limitation: limit rendering to a certain number of chunk layers above and below the player.
- Chunk loading (logic updates) remains square, so all chunks are still loaded and updated.
- Presets & Custom Mode: Quickly switch between predefined configurations (Balanced, Performance, Aggressive) or choose Custom to freely adjust all parameters.
- Compatible with Sodium:
- When Sodium is present, configuration appears in the Video Settings screen.
- Without Sodium, the mod works standalone using a JSON config file.
- No effect on entities or other objects – only chunk rendering is affected.
Dependencies
- Required: Fabric Loader ≥0.18.4
- Optional: Sodium 0.8.6+ (for in-game GUI configuration)
- Optional: Super Fast Math any version (for faster math)
Installation
- Install Fabric Loader.
- Download the latest
circular-rendering-<version>.jarfrom the Releases page. - Put the JAR into your
modsfolder. - (Optional) Install Sodium if you want the in-game configuration sliders and presets.
Configuration
With Sodium installed
- Go to Options → Video Settings.
- Scroll down to find the Circular Rendering section.
Presets
- Render Preset dropdown:
- Balanced:
Render Radius Scale = 100%, vertical range disabled (vanilla behavior, but still optimized). - Performance:
Render Radius Scale = 80%, vertical range enabled, 10 layers. - Aggressive:
Render Radius Scale = 40%, vertical range enabled, 3 layers. - Custom: All sliders become unlocked, allowing you to freely adjust the parameters below.
- Balanced:
Selecting a non‑Custom preset automatically applies its parameters and locks the manual controls.
Manual Configurations (available only when “Custom” preset is selected)
- Render Radius Scale (10% – 100%):
- 100% = perfect circle (radius = view distance × 16).
- Lower values make the left/right radius smaller, turning the circle into an ellipse and culling more chunks to the sides.
- Enable Custom Vertical Range (toggle) – when enabled, you can set:
- Vertical Range (1–32 layers): Number of chunk layers (16 blocks each) to render above and below the player.
Without Sodium
The mod creates a JSON config file at config/circular-rendering.json.
Example content:
{
"renderRadiusScale": 1.0,
"enableVerticalRange": false,
"verticalRange": 16,
"preset": "BALANCED"
}
renderRadiusScale– a double between 0.1 and 1.0.1.0= perfect circle.< 1.0= ellipse (narrower left/right).
enableVerticalRange– a boolean, enables vertical range limiting when true.verticalRange– an integer (1–32), number of chunk layers to render above and below the player (each layer = 16 blocks).preset– one of"BALANCED","PERFORMANCE","AGGRESSIVE", or"CUSTOM".- If the preset is not
"CUSTOM", the three manual parameters are ignored and the preset's values are used. - If the preset is
"CUSTOM", the manual parameters are used exactly as set.
- If the preset is not
Changes take effect after restarting the game or reloading chunks.
How It Works
- Vanilla mode (no Sodium): The mod injects into
WorldRenderer.renderBlockLayersand filters the chunk list using the shape defined by:
where(forward² / a²) + (right² / b²) ≤ 1a = view distance × 16(fixed forward/backward radius) andb = a × renderRadiusScale(left/right radius).
Whenb = a, the shape is a circle. If vertical range is enabled, it also checks chunk Y layers. - Sodium mode: The mod injects into Sodium's
OcclusionCuller.isWithinRenderDistanceand returnsfalsefor chunks outside this shape or vertical range.
Both approaches only affect chunk rendering; chunk loading remains square, so game mechanics (redstone, entity AI, etc.) work normally everywhere.
Compatibility
- Support status of Minecraft versions:
| Versions | Support Status |
|---|---|
| 26.1.2 | ✅ |
| 26.1.1 | ✅ |
| 26.1 | ✅ |
| 1.21.11 | ✅ |
| Lower versions | Will not support |
- Fully compatible with Sodium 0.8.6+ (both mods can be used together).
- Should be compatible with most other mods that don't heavily modify chunk rendering. If you encounter issues, please report them.
Building from Source
Clone the repository and run:
./gradlew build
The built JAR will be in build/libs/.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Available Versions
How to Install Circular Rendering on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set fabric Loader
In the panel under "Egg", select the fabric loader and matching Minecraft version (26.1.2).
Install Mod
Open the mod browser in the dashboard and search for "Circular Rendering". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
26.1.2, 26.1.1, 26.1 (+1 more)
Server-side
✗ UnsupportedRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Circular Rendering server crashes on startup – what to do?
Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (26.1.2). You can switch loaders with one click in the panel.
Is Circular Rendering compatible with fabric?
Circular Rendering officially supports fabric for Minecraft 26.1.2, 26.1.1, 26.1. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with Circular Rendering – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Circular Rendering consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install Circular Rendering with just one click on your server.