
ImmediatelyFast
Speed up immediate mode rendering in Minecraft
About
<a href="https://modrinth.com/mod/immediatelyfast"><img src="https://img.shields.io/badge/dynamic/json?color=158000&label=downloads&prefix=+%20&query=downloads&url=https://api.modrinth.com/v2/project/5ZwdcRci&logo=modrinth"></a> <a href="https://curseforge.com/minecraft/mc-mods/immediatelyfast"><img src="https://cf.way2muchnoise.eu/full_686911_downloads.svg"></a>
<p>ImmediatelyFast is an open source Minecraft mod which improves the immediate mode rendering performance of the client. <br />It is designed to be lightweight and compatible with other mods.</p> </div>Optimizations
ImmediatelyFast generally optimizes all immediate mode rendering by using a custom buffer implementation which batches
draw calls and uploads data to the GPU in a more efficient way.
The following parts of the immediate mode rendering code are optimized:
- Entities
- Block entities
- Particles
- Text rendering
- GUI/HUD
- Immediate mode rendering of other mods
It also features targeted optimizations where vanilla rendering code is being changed in order to run faster.
The following parts of the rendering code are optimized with a more efficient implementation:
- Map rendering
- HUD rendering
- Text rendering
Performance
Here are some performance comparisons of areas the mod optimizes particularly well:
If other mods are listed in the table this means that this mod also optimizes that part of the game.
Test Hardware: Ryzen 5 1600, 32GB DDR4, GTX 1060
FPS Numbers were taken from external tools (in this case MSI Afterburner) and averaged over a couple of seconds.
If you decide to test this yourself keep in mind that ImmediatelyFast can only improve FPS in a scenario where your CPU
is the bottleneck (Most likely the case if your GPU isn't ancient or you use very heavy shaders).
Slower CPUs will benefit more from this mod than really fast CPUs.
Entity Rendering
Generally FPS should be around 2x higher on busy servers. [Tested using IF 1.1.7 on 1.19.3]
Tested on a spigot server with 1000 cows in a 3x3 box on screen.
| Other mods | Without ImmediatelyFast | With ImmediatelyFast | Improvement |
|---|---|---|---|
| None | 16 FPS | 60 FPS | 3.75x |
| Sodium | 21 FPS | 82 FPS | 3.90x |
| Iris and Sodium | 60 FPS | 76 FPS | 1.27x |
Map Rendering
Generally FPS should be around 5x higher when there are many maps on screen. [Tested using IF 1.1.1 on 1.19.3]
Tested on a fabric server with the Image2Map mod and around 930 maps on screen.
| Other mods | Without ImmediatelyFast | With ImmediatelyFast | Improvement |
|---|---|---|---|
| None | 50 FPS | 310 FPS | 6.20x |
| Sodium | 47 FPS | 320 FPS | 6.81x |
HUD Rendering
Generally FPS should be around 40% higher in almost all scenarios. [Tested using IF 1.1.7 on 1.19.3]
Tested on a spigot server with different HUD elements on screen (Scoreboard, Potion effect overlay, Bossbars, Filled Chat, Extra hearts, Full Hotbar).
| Other mods | Without ImmediatelyFast | With ImmediatelyFast | Improvement |
|---|---|---|---|
| None | 250 FPS | 380 FPS | 1.52x |
| Sodium | 335 FPS | 630 FPS | 1.88x |
| Exordium and Sodium | 740 FPS | 840 FPS | 1.14x |
Text Rendering
Generally FPS should be around 2x higher when there are many signs or holograms around you. [Tested using IF 1.1.7 on 1.19.3]
Tested on a spigot server with 200 signs (Filled with text) on screen.
| Other mods | Without ImmediatelyFast | With ImmediatelyFast | Improvement |
|---|---|---|---|
| None | 70 FPS | 125 FPS | 1.79x |
| Sodium | 110 FPS | 300 FPS | 2.73x |
Block-Entity Rendering
Generally FPS should be around 20% higher when there are many block entities around you. [Tested using IF 1.1.7 on 1.19.3]
Tested on a spigot server with 400 chests on screen.
| Other mods | Without ImmediatelyFast | With ImmediatelyFast | Improvement |
|---|---|---|---|
| None | 170 FPS | 205 FPS | 1.20x |
| Sodium | 315 FPS | 410 FPS | 1.30x |
Compatibility
ImmediatelyFast is structured to interfere with mods as little as possible. It should work fine with most if not all mods and modpacks.
Known incompatibilities:
- OptiFabric / OptiFine
- Most closed source "clients" like LunarClient and LabyMod
If you encounter any issues, please report them on the Issue Tracker.
Config
ImmediatelyFast has a config file which can be found in the config folder of your Minecraft instance. Most options should be left at their default values, but some may be tweaked to improve performance or compatibility.
font_atlas_resizing: Increases the sizes of the font atlas textures. This improves performance with high resolution or custom server fonts.map_atlas_generation: Puts the map textures into a single texture instead of multiple textures. This improves performance when many maps are on screen.hud_batching: Improves the performance of the HUD rendering by submitting less draw calls. If you experience issues with HUD elements, try disabling this optimization.fast_text_lookup: Caches some data between rendering text characters. This slightly improves performance when rendering a lot of text.- `avoid_redundant_framebuf
Versions
* Fixed player nametag render order * Fixed core shader incompatibility detection logic bug * Added allocated bytes of Buffer Pool to the debug hud * Added advanced memory leak detector * Fixed batching buffer clearing
* Fixed player nametag render order * Fixed core shader incompatibility detection logic bug * Added allocated bytes of Buffer Pool to the debug hud * Added advanced memory leak detector * Fixed batching buffer clearing
* Fixed player nametag render order * Fixed core shader incompatibility detection logic bug * Added allocated bytes of Buffer Pool to the debug hud * Added advanced memory leak detector * Fixed batching buffer clearing