Sodium

Sodium

44M Downloads

Minecraft 1.17 support

jellysquid3 opened this issue ยท 18 comments

commented

I'm creating this sticky issue so users stop spamming our issue tracker with questions about when the mod will be updated.

When will Sodium support Minecraft 1.17?

When it's ready -- we're working on it. This has always been our answer to ETAs. We're hobbyists and volunteers working in our free time. Right now, our priority is stabilizing the huge architectural and performance improvements that have been made to Sodium over the past year on Minecraft 1.16, then we can examine porting that stable version to Minecraft 1.17.

Ideally, we'd like to have a release of Sodium available for Minecraft 1.17 within the week, but this will depend on our resources. That is not an ETA.

How much work is involved? Doesn't this version change rendering a lot?

Yes, Mojang made many changes and improvements to Minecraft's rendering engine, some of which are quite substantial for unlocking core-profile compatibility with OpenGL.

However, Sodium itself was built from the ground up on a modern rendering architecture independent from vanilla, unlike other mods which extend vanilla's rendering engine more so than replace it (i.e. OptiFine). We don't anticipate needing huge architectural changes or refactors for the port to Minecraft 1.17 at this point, and the known problem areas were addressed months ahead of time with my work on the ThinGL branch.

While many other mods might be worried about these changes, we're actually quite excited! Supporting the Core profile means unlocking newer features that enable Sodium's optimizations on platforms like macOS.

What is ThinGL?

It's shorthand for "Thin OpenGL Abstraction Layer."

Sodium used to directly issue OpenGL calls throughout the code base, but this was error prone, greatly increased code verbosity, and made it difficult to track state in an efficient way. It also meant that mods trying to inject into Sodium's rendering code paths had to be very careful to put everything back how they found it.

This new abstraction layer (which was recently merged in 1.16.x/next and is slated for inclusion in the upcoming Sodium 0.2 release, more details below) solves these problems by providing a clean and consistent interface for internal use. In other words, this is a new layer that sits between Sodium's rendering engine and OpenGL.

These changes don't have any user-facing effects (aside from improving stability and performance slightly), but they make a world of difference for development.

What's this about Sodium 0.2 and Sodium Next?

Sodium hasn't seen a new release in a very long time, but there's been a lot of work under the hood in this silence. This work was referred to under the name of "next" on a branch separate from the stable 0.1 release version. As of today, the "next" branch is entering a feature freeze so we can focus on fixing any remaining issues and getting it out to players. This branch will eventually become Sodium 0.2 once it's ready and replace the existing stable branch.

We want to get a release out to players of what will be Sodium 0.2 on Minecraft 1.16 before we begin porting as it will help us in diagnosing where problems exist. The milestone tracking issues that need to be resolved before release can be found here.

commented

Time for someone to go through and flag all those issues as duplicates...

commented

Note for anyone reading this: ETA stands for Estimated Time of Arrival

commented

Would it make sense to include some sort of fix for #46 in the 0.2 milestone? Either adding a button to go to the vanilla settings menu or adding the missing settings to the sodium menu seems like a decent solution for the time being. In my opinion it would provide a slightly more ""polished"" feel and avoid people asking about where to find those settings with the somewhat obscure shift+p shortcut.

commented

thank you for making this issue, i was gonna make a sticky issue myself if you guys hadnt already. great to see yall getting a jump on it

commented

Hi, it would be really helpful if you could post a weekly update on your progress on Fabric for 1.17, just so we can keep track of the same and update as soon as it is ready. Thank you.

commented

You can join the Discord server to keep track of progress. Specifically the progress tracking channels at the top, and the #mod-devlog channel where updates are occasionally posted.

commented

You can join the Discord server to keep track of progress. Specifically the progress tracking channels at the top, and the #mod-devlog channel where updates are occasionally posted.

The invite link seems to be broken... It says "Whoops, Unable to accept Invite"

commented

The invite link seems to be broken... It says "Whoops, Unable to accept Invite"

I believe that means you've been banned. Works fine for me.

commented

Hmmm, sounds... bad.

commented

Tested out build 445 and 452 and everything seems to be functional for 1.17. Also had around 27 mods running.

commented

If you do try out those builds, be warned, these are unstable builds so don't expect everything to be functional, I may have not found every bug

commented

Ran virus total scans on both builds, nothing detected, so it should be safe to install

commented

Build 452 also has very beta support for the fabric rendering api!

commented

@Eshanepicfighter firstly, this mod is open source, so you can just check the code for viruses if you are very paranoid about it (for some reason), if you have the technical ability, for your peace of mind
secondly, minecraft booting fine doesnt mean that there are no bugs, on the discord the mod is still in its beta testing phase
thirdly, the mod does not have support for the fabric rendering api

there are three things that this mod had issues with:
fabric-rendering-api-v1 (the main one that most incompatible mods use)
fabric-rendering-data-attachment-v1
fabric-rendering-fluids-v1

support for the latter two is being worked on in sodium 1.17 right now (as can be seen in the latest commits), but support for fabric-rendering-api-v1 has not been added to sodium

lastly, build 452 (and now 453 at the time of writing) is a pull request to the 1.17 branch, NOT the official mod itself - for that you would need 445 (as you mentioned in your first comment briefely)

commented

Checking build 453 for viruses and compatibility. Has no viruses, and minecraft boots perfectly fine. Unsure of bugs in this new build

commented

Sorry for misguiding whoever read those previous comments. I'm now running on the windows 11 beta build and I am very new to Minecraft Modding. Please, take whatever I say with caution

commented

Ok. I removed build 453 and used 445. I don't really know why I just wanted to make sure that what I am executing on my system is safe. I marginally though due to build titles that the fabric rendering api was being implemented. Yes, there are bugs, thats why I like to test things, for example, in both builds enderportals star effect render like lines instead of dots