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...
This release fixes a few more issues in Sodium 0.3 for Minecraft 1.17.1.
Changes and fixes
- 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
This release fixes many issues and performance problems that were introduced with the first release of Sodium for Minecraft 1.17.1.
Changes and fixes
- 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
This release adds official support for Minecraft 1.17.1 and with it many new improvements and fixes.
Changes and fixes
- 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.
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.