Circular Rendering

Circular Rendering

A Fabric mod that changes the vanilla rendering method to 3D spherical rendering.

by
4.5K Downloads
fabricgame-mechanicsoptimizationutility
Configure a Compatible Minecraft Server

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).
  • 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

Installation

  1. Install Fabric Loader.
  2. Download the latest circular-rendering-<version>.jar from the Releases page.
  3. Put the JAR into your mods folder.
  4. (Optional) Install Sodium if you want the in-game configuration sliders and presets.

Configuration

With Sodium installed

  1. Go to Options → Video Settings.
  2. 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.

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.

Changes take effect after restarting the game or reloading chunks.

How It Works

  • Vanilla mode (no Sodium): The mod injects into LevelRenderer.cullTerrain and filters the chunk list using the shape defined by:

    (forward² / a²) + (right² / b²) ≤ 1
    

    where a = view distance × 16 (fixed forward/backward radius) and b = a × renderRadiusScale (left/right radius).
    When b = a, the shape is a circle. If vertical range is enabled, it also checks chunk Y layers.

  • Sodium mode: The injection point depends on the Minecraft version:

    • MC 26.1.2 and above: The mod redirects the testDistance call inside OcclusionCuller.visitNode. This replaces Sodium's default cylindrical distance check with the elliptical formula directly within the graph‑based occlusion culling traversal, preserving the full culling structure.
    • MC 26.1.1 and below: The mod injects into OcclusionCuller.isWithinRenderDistance and returns false for chunks outside the ellipse (or vertical range), effectively filtering them from Sodium's visible set.

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.2
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

Circular Rendering 1.0.6+mc26.1.2release
MC 26.1.2fabric
July 20, 2026
Circular Rendering 1.0.6+mc26.2release
MC 26.2fabric
June 21, 2026
Circular Rendering 1.0.5+mc26.1.xrelease
MC 26.1, 26.1.1, 26.1.2fabric
May 23, 2026
Circular Rendering 1.0.4+mc26.1.xrelease
MC 26.1, 26.1.1, 26.1.2fabric
April 18, 2026
Circular Rendering 1.0.4+mc1.21.11release
MC 1.21.11fabric
April 18, 2026

How to Install Circular Rendering on Your Client

1

Install the Mod Loader Locally

Install fabric for your local Minecraft version.

2

Download the Matching File

Choose the Circular Rendering file for fabric and Minecraft 26.2.

3

Install Mod

Place the .jar file in your local .minecraft/mods folder and restart Minecraft. No server-side installation is required.

Compatibility

Mod Loaders

fabric

Minecraft Versions

26.2, 26.1.2, 26.1.1 (+2 more)

Server-side

Unsupported

Recommended RAM

4 GB(min. 3 GB)

Frequently Asked Questions

Does Circular Rendering need to be installed on the Minecraft server?

No. Modrinth marks Circular Rendering as unsupported on the server side. Install it only in your local Minecraft mods folder. Your server can remain unchanged unless the mod page lists an additional dependency.

Which version and loader does Circular Rendering require?

Use a file for fabric and your exact Minecraft version. Supported versions include 26.2, 26.1.2, 26.1.1. Files for different loaders are not interchangeable.

Circular Rendering is not working – what should I check?

First check the Minecraft version, loader version and required dependencies. Put the .jar file in your local .minecraft/mods folder and remove older duplicates. Because this mod is client-side, adding server RAM will not fix it.

Minecraft Server for Your Group

Circular Rendering stays on your client. Host a compatible world for your group.

Recommended RAM
4 GBfrom €5.2/mo
Minimum 3 GB | per 8 players
Create Server Now
Client Compatibility Guide
NVMe SSD Storage
DDoS Protection included

Details

License
MIT License
Server-side
Unsupported

Supported Versions

26.226.1.226.1.126.11.21.11