Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minecraft 1.17 support #674

Closed
jellysquid3 opened this issue Jun 5, 2021 · 18 comments
Closed

Minecraft 1.17 support #674

jellysquid3 opened this issue Jun 5, 2021 · 18 comments

Comments

@jellysquid3
Copy link
Member

jellysquid3 commented Jun 5, 2021

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.

@jellysquid3 jellysquid3 pinned this issue Jun 5, 2021
@Leo40Git
Copy link
Contributor

Leo40Git commented Jun 5, 2021

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

@DragonEggBedrockBreaking

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

@Hnaguski
Copy link

Hnaguski commented Jun 6, 2021

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.

@Redd56
Copy link

Redd56 commented Jun 9, 2021

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

@KB-Q
Copy link

KB-Q commented Jun 13, 2021

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.

@silversquirl
Copy link
Member

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.

@KB-Q
Copy link

KB-Q commented Jun 14, 2021

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"

@jowsey
Copy link

jowsey commented Jun 15, 2021

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.

@IkaSek
Copy link

IkaSek commented Jun 21, 2021

Hmmm, sounds... bad.

@eshankiyer
Copy link

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

@eshankiyer
Copy link

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

@eshankiyer
Copy link

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

@eshankiyer
Copy link

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

@eshankiyer
Copy link

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

@DragonEggBedrockBreaking

@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)

@eshankiyer
Copy link

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

@eshankiyer
Copy link

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

@CaffeineMC CaffeineMC locked as off-topic and limited conversation to collaborators Jun 29, 2021
@jellysquid3
Copy link
Member Author

@jellysquid3 jellysquid3 unpinned this issue Jul 17, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

No branches or pull requests

10 participants