babric / prism-instance

18 stars 8 forks source link

Mac M1/2/...∞ Woes, Natives Incompatibilities #5

Open sylv256 opened 1 month ago

sylv256 commented 1 month ago

the L in LWJGL stands for always Losing

[23:29:54] [Minecraft main thread/ERROR] (FabricLoader) Uncaught exception in thread "Minecraft main thread"
java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path: /Users/sylv/Library/Application Support/PrismLauncher/instances/babric-b1.7.3/natives
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:2434) ~[?:?]
    at java.lang.Runtime.loadLibrary0(Runtime.java:818) ~[?:?]
    at java.lang.System.loadLibrary(System.java:1989) ~[?:?]
    at org.lwjgl.Sys$1.run(Sys.java:72) ~[lwjgl-2.9.4-babric.1.jar:?]
    at java.security.AccessController.doPrivileged(AccessController.java:318) ~[?:?]
    at org.lwjgl.Sys.doLoadLibrary(Sys.java:66) ~[lwjgl-2.9.4-babric.1.jar:?]
    at org.lwjgl.Sys.loadLibrary(Sys.java:96) ~[lwjgl-2.9.4-babric.1.jar:?]
    at org.lwjgl.Sys.<clinit>(Sys.java:117) ~[lwjgl-2.9.4-babric.1.jar:?]
    at org.lwjgl.opengl.Display.<clinit>(Display.java:135) ~[lwjgl-2.9.4-babric.1.jar:?]
    at net.minecraft.client.Minecraft.method_2106(Minecraft.java:244) ~[client-intermediary.jar:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:716) ~[client-intermediary.jar:?]
    at java.lang.Thread.run(Thread.java:833) [?:?]

Status

The issue has been fixed and is awaiting a merge upstream.

sylv256 commented 1 month ago

When reverting to regular LWJGL, the G and B channels are swapped resulting in a weird-looking game.

thecatcore commented 1 month ago

Use this instance instead: https://github.com/telvarost/prism-instance.

calmilamsy commented 1 month ago

That instance does not ship with proper M1 natives. I'll sort out a proper instance when I get on (~3-4hrs, bump if I haven't done anything by then)

thecatcore commented 1 month ago

Also install this mod: https://modrinth.com/mod/gambac

thecatcore commented 1 month ago

That instance does not ship with proper M1 natives. I'll sort out a proper instance when I get on (~3-4hrs, bump if I haven't done anything by then)

I remember seeing an instance shipping LF LWJGL but I can't find it anymore.

calmilamsy commented 1 month ago

I started work on one, then got sidetracked, lmao

DanyGames2014 commented 1 month ago

That instance does not ship with proper M1 natives. I'll sort out a proper instance when I get on (~3-4hrs, bump if I haven't done anything by then)

I remember seeing an instance shipping LF LWJGL but I can't find it anymore.

Babric Enriched ships with LF LWJGL, maybe thats what you reacall ?

thecatcore commented 1 month ago

Oh yeah probably.

sylv256 commented 1 month ago

Also install this mod: https://modrinth.com/mod/gambac

I suggest shipping the M1 version with this mod pre-installed.

DanyGames2014 commented 1 month ago

Also install this mod: https://modrinth.com/mod/gambac

I suggest shipping the M1 version with this mod pre-installed.

Please no :( Im already blamed for 80% of Babric crash logs

calmilamsy commented 1 month ago

https://github.com/Glass-Series/babric-prism-instance/releases

Note: You'll still need gambac to solve the G and B channel switching.

sylv256 commented 1 month ago

The Glass Series prism instance with Gambac crashes https://mclo.gs/ic3GT18

sylv256 commented 1 month ago

telvarost's prism instance with Gambac also crashes https://mclo.gs/7XNTfEc

sylv256 commented 1 month ago

It seems to delete the natives folder lol.

sylv256 commented 1 month ago

This is what I get when I use the Glass Series instance without Gambac: https://mclo.gs/YrqNb9D This is telvarost's instance without Gambac: https://mclo.gs/qsVERRj

calmilamsy commented 1 month ago

Try the newest version now. If it doesn't work, I'll dig out the crapbook and take a closer look when I'm next around.

sylv256 commented 1 month ago

It's giving the same exact error with no natives folder in sight https://mclo.gs/XOmEZqm

calmilamsy commented 1 month ago

The natives folder is a temporary folder.

calmilamsy commented 1 month ago

Sigh. Give me a moment.

calmilamsy commented 1 month ago

Okay yeah, just hit edit instance, and changle the lwjgl version to be the normal prism one. For some reason macos natives are just not downloading in the first place, and it's not showing me any logs, which is fucking helpful.

sylv256 commented 1 month ago

what if it's called arm64 rather than aarch64 that's the naming convention of the newer LWJGL 3 stuff

sylv256 commented 1 month ago

The normal LWJGL (2.9.4-nightly-whateveridk) works well with Gambac. Unfortunately, SmoothBeta doesn't work because of some silly macOS-specific GLSL syntax nightmare, so that sucks. One big issue however: the audio does not work at all. https://mclo.gs/eS9vUed

sylv256 commented 1 month ago

Narrowing it down, it appears it's one of the mods in my list. I'll go bug the offending mods' issue tracker. In the meantime, I'll keep this issue open since this still affects an unmodified prism instance.

calmilamsy commented 1 month ago

You have an error related to not having GCAPI2 installed. Install that and see if the audio issues continue, cause I have audio on the crapbook.

sylv256 commented 1 month ago

Using Glass Config API 2 with MojangFix Station API, there is still no audio. https://mclo.gs/eooMt3N

calmilamsy commented 1 month ago

I know what's wrong with the instance, I'll get on it when I get on tomorrow, gotta sleep now though.

sylv256 commented 1 month ago

After a bit of gaming, the audio came back. 😕

calmilamsy commented 1 month ago

Alright, fully fixed on the latest glass-series release of the instance.

After a bit of gaming, the audio came back. 😕

Makes sense, minecraft was probably still loading all sounds.

sylv256 commented 1 month ago

Should we make a PR with the fix?