Releases: CaffeineMC/sodium
Sodium 0.3.4 for Minecraft 1.17.1
This release contains a few important bug fixes and improvements for Minecraft 1.17.1.
Highlights
- Flickering and other rendering bugs caused by the player being far away from the center of the world (i.e. near the world border) should no longer happen
- Fixed a memory leak that would slowly develop each time a chunk is updated
Sodium 0.4.0-alpha6 for Minecraft 1.18.1
This release is a minor patch for 0.4.0-alpha5 which fixes a number of reported issues. We're currently working on some pretty big changes for the next major release and are pressed for time, so this patch only a small set of issues.
Highlights
- Lag spikes caused by block updates should be significantly improved
- Fog effects now match those introduced in Minecraft 1.18.1
- Fixed a slow memory leak that would occur from fence objects being leaked
- Server view distance is now respected, preventing discrepancies between client/server
- Biome blending effects have been improved slightly
- World rendering bugs/flickering caused by being far away from world center (i.e. near the world border) no longer occurs
Known issues
- Some parts of the world may not load correctly unless the player exits and loads the world file again
Sodium 0.4.0-alpha5 for Minecraft 1.18
This is a port of Sodium 0.3.3 to Minecraft 1.18 with some changes for compatibility. Fabric Loader 0.12 or newer and Java 17 is required.
Known issues
- Placing and breaking blocks may cause stutters and other pauses when "Biome Blend Distance" is set to high values
- Some parts of the world may not load correctly unless the player exits and loads the world file again
- Server view distance is not respected, causing incorrect fog effects (#994)
Sodium 0.3.3 for Minecraft 1.17.1
This release contains a few important bug fixes and improvements for Minecraft 1.17.1.
Highlights
- Improved frame rates when loading or updating chunks.
- Fixed a memory leak caused by sync objects never getting released.
- Added options to control how many threads are used for chunk building, and to always defer chunk updates for improved frame times. The default number of threads used for chunk building is more optimally chosen and should help improve frame rates on slower CPUs.
- Improved the precision of the compressed vertex format, reducing texture glitches found with some texture packs and vanilla blocks
- The inner faces of leaves are no longer rendered if fast graphics are enabled, significantly reducing the geometry count of scenes with lots of foliage (thanks ADudeCalledLeo.)
- Config file handling has been greatly improved, and if a corrupted config file is found, the user will be prompted to fix the problem instead of the game crashing.
And everything else...
- Mods which provide config file overrides will no longer crash on first startup (thanks tbejos.)
- Improved our shader code slightly to reduce overhead in the vertex stage, potentially helping older graphics cards.
- Improved compatibility with the legacy AMD graphics drivers on Windows.
- Fixed a problem where empty draw calls would be submitted during chunk rendering.
- Some other minor improvements and fixes...
Sodium 0.3.2 for Minecraft 1.17.1
This release fixes a few more issues in Sodium 0.3 for Minecraft 1.17.1.
Changelog
- Fixed an issue where OpenGL 4.x buffer targets would be accessed on OpenGL 3.x hardware, leading to a flood of OpenGL errors and degraded performance
- Fixed the "Use Block Face Culling" option not applying
- Fixed some strings not being translatable in the Video Settings screen
- Fixed a number of cases where the world would suddenly disappear at specific camera angles
- Fixed an issue where particles using animated sprites would not be animated
- Merged the cloud toggle and quality controls into one option to reduce confusion
- Fixed entities with spectral effects not being rendered through walls due to entity culling
Sodium 0.3.1 for Minecraft 1.17.1
This release fixes many issues and performance problems that were introduced with the first release of Sodium for Minecraft 1.17.1.
Changelog
- Improved frame times when loading/updating chunks through the use of persistently mapped staging buffer (requires OpenGL 4.4+)
- Fixed chunk rendering corruption on older AMD/Windows systems
- Fixed missing chunk and "hole in the world" issues that could appear on some AMD systems
- Fixed the "Only Animate Visible Textures" option not disabling the optimization if ticked
- Fixed config files sometimes becoming corrupt after the game crashes
- Fixed an issue where fog effects would not respect other mods which modify the camera
- Fixed compatibility with LWJGL 3.2.3 and macOS M1 hardware
- Fixed an issue where some blocks wouldn't render their waterlogged state against glass.
- Changed how camera transformation matrices are handled in our shader code for better compatibility with Iris
Sodium 0.3.0 for Minecraft 1.17.1
This release adds official support for Minecraft 1.17.1 and with it many new improvements and fixes.
Changelog
- A brand new chunk rendering backend has been introduced, bringing the best performance yet to any hardware that can run Minecraft.
- Added support for some Fabric API features, such custom fluid rendering and blocks with attached data.
- Many improvements to how we use and allocate VRAM, reducing stutters caused by loading chunks and overall GPU memory usage.
- Additionally, chunk loading was improved to prevent overload and to better stabilize frame rates. This can help with loading into worlds or when many blocks are changing at once.
- Improved the amount of time it takes to rebuild the chunk graph. This can reduce lag associated with moving around in the world or loading chunks at higher render distances.
- Many new optimizations for high resolution texture packs, especially when animated textures are used.
- Fixes and improvements for fog effects during sunrise/sunset and while underwater, helping to improve visuals drastically.
- Reduced VRAM usage in ocean biomes and other environments with lots of water.
- Support for custom translations (to be added in a future release)
- Improvements to particle rendering/culling, helping performance in particle heavy servers.
- Additional optimizations for biome color blending.
- ... and many other smaller, miscellaneous optimizations specific to Minecraft 1.17.
Sodium 0.2.0 for Minecraft 1.16.5
This is the first major release of Sodium since launch, so there are nearly a year's worth of improvements and bug fixes in this one! Hardware support has been greatly improved, and there's been many new optimizations to help out everyone.
Highlights
- Added a new and optimized system for vertex writing. Depending on the situation, significant performance improvements can be seen for both block entity rendering, mob rendering, and text rendering.
- Improved hardware support for AMD and Intel GPUs on Windows, allowing the use of multi-draw rendering where it was otherwise broken in the past. Multi-draw chunk rendering can drastically improve frame rates where supported.
- Switched to using the new ThinGL library, which allows Sodium code to use a stateless abstraction over OpenGL. This helps to improve performance, mod compatibility, stability, and future compatibility with Minecraft 1.17.
- Preparing chunk updates for rendering now takes much less time by better taking advantage of multi-threading, greatly improving frame times while loading or updating chunks.
- Many new optimizations for our chunk graph and culling algorithm, helping to reduce CPU load and improve frame rates while playing.
- Improved compatibility with many mods depending on additional block data to be available during chunk building, such as LambdaBetterGrass.
- Added an API other mods can use to disable Sodium features. Sometimes, incompatibilities can arise, but mods supporting this functionality can ask Sodium to disable specific parts of itself automatically to avoid these.
- Fixed large memory leaks that could occur when unloading and loading many worlds repeatedly.
- Fixed terrain stitching issues caused by high-resolution texture packs and exotic block models.
- Fixed some issues with smooth block and entity lighting, notably with emissive properties.
- Fixed issues where the top-face of fluids would disappear at certain camera angle, or while inside a fluid.
- Fixed many issues causing chunks not to update or appear when looking in certain directions.
- Issues with render distance and fog effects when using certain mods have been fixed.
... and much, much more.
You can find a number of issues that were fixed with this release here. For the complete list of changes, you can review the Git commit log here.
Sodium 0.1.0 for Minecraft 1.16.2/1.16.3/1.16.4/1.16.5
This is pretty much a verbatim port of the original Sodium 0.1.0 release for Minecraft 1.16.2/1.16.3/1.16.4/1.16.5. We're doing this as a temporary stopgap so people do not have to continue waiting for the upcoming refactor and improvements.
Sodium 0.1.0 for Minecraft 1.16.1
This is the first official release of Sodium for Minecraft, my free and open-source rendering engine replacement for the client that greatly improves frame rates, reduces micro-stutter, and fixes graphical issues in Minecraft. It boasts wide compatibility with the Fabric mod ecosystem when compared to other mods and doesn't compromise on how the game looks, giving you that authentic block game feel.
Note: Sodium is mostly stable at this point, but it does not yet contain support for the Fabric Rendering API, which a small number of mods currently use. If you try to use these mods with Sodium, your game may crash or behave unexpectedly.
Features
Features
-
A modern OpenGL rendering pipeline for chunk rendering that takes advantage of multi-draw techniques, allowing for a significant reduction in CPU overhead (>90%) when rendering the world. This can make a huge difference to frame rates for most computers that are not bottlenecked by the GPU or other components.
-
Multi-threaded chunk updates for nearby block and light changes, greatly reducing lag caused by interacting with the world. (before, after)
-
Many optimizations for chunk loading and block rendering, making chunk loading significantly faster and less damaging to frame rates. (before, after)
-
Many optimizations for both mob and block entity rendering, reducing the CPU overhead and greatly improving frame rates when you get carried away placing too many chests in one room.
-
More efficient chunk mesh building, greatly reducing the game's memory consumption and allocation rate when loading chunks, which in turn reduces lag spikes caused by garbage collector activity.
-
Many graphical fixes for lighting issues. For example, take this before and after of a white concrete room in vanilla, or this comparison while underwater.
-
Smooth lighting for fluids and other special blocks. (comparison)
-
Smooth biome blending for blocks, providing greatly improved graphical quality that is significantly less computationally intensive. (comparison)
... and much more, this list is still being written after the initial release.
Installation
Make sure you have the latest version of Fabric Loader present and then simply copy the mod into your mods folder. No other mods or additional setup (not even Fabric API!) is required. You do not want the -dev
or -sources
files below! Make sure you're grabbing sodium-fabric-mc1.16.1-0.1.0.jar
or clicking this download link.
You do not need to create new worlds in order to take advantage of the mod.