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

Partial incompatibility with Sodium (Flywheel backend) #54

Closed
AeiouEnigma opened this issue Dec 25, 2021 · 45 comments
Closed

Partial incompatibility with Sodium (Flywheel backend) #54

AeiouEnigma opened this issue Dec 25, 2021 · 45 comments
Labels
1.18 bug Something isn't working

Comments

@AeiouEnigma
Copy link

AeiouEnigma commented Dec 25, 2021

Create's shafts, belts, crushing wheels, and probably more do not render at all while the Flywheel backend is enabled.

2021-12-24_20 57 54
2021-12-24_20 58 07

@AeiouEnigma
Copy link
Author

Haven't found any issues at all with Sodium when Flywheel backend is disabled

@Jozufozu
Copy link

https://github.com/Jozufozu/sodium-forge/commit/9bcfbc28118fc35ee831a01eea7c59b55b94fd26
No doubt sodium's internals have changed, but this needs to be fixed on their end

@AeiouEnigma
Copy link
Author

@Jozufozu
Copy link

Absolutely, ping me if you get it working and I'll help verify

@AeiouEnigma
Copy link
Author

Okay it's not quite as plug-and-play as I was hoping. No improvement when flywheel backend is enabled, and making that change to sodium as-written also newly breaks things when flywheel backend is disabled

This task is officially beyond me lol

image

@AeiouEnigma AeiouEnigma added 1.18 bug Something isn't working labels Dec 28, 2021
@Oliver-makes-code
Copy link

Oliver-makes-code commented Dec 31, 2021

It seems to work fine with Indium
2021-12-30_22 25 31

@AeiouEnigma
Copy link
Author

AeiouEnigma commented Dec 31, 2021

how

2021-12-30_23 29 45

@AeiouEnigma
Copy link
Author

Could this be an nvidia issue?

@Oliver-makes-code
Copy link

Possibly, Sodium has had problems with driver-specific things in the past

@Oliver-makes-code
Copy link

Here's a small update: It fixes it, but only for a period of time, and then it spams the following error in the console:

[22:42:44] [Render thread/INFO]: OpenGL debug message: id=1282, source=API, type=ERROR, severity=HIGH, message='Error has been generated. GL error GL_INVALID_OPERATION in (null): (ID: 173538523) Generic error'

@Oliver-makes-code
Copy link

It occurs when chunks are reloaded after the blocks are placed

@Oliver-makes-code
Copy link

Gonna look into this to see what the cause is

@Oliver-makes-code
Copy link

Oliver-makes-code commented Jan 7, 2022

It looks like that when a chunk reload is triggered via world reload, f3+a, or unloading a chunk, FlyWheel removes the models it needs to render, and Sodium's renderer doesn't call the methods that FlyWheel uses to put them back

@Oliver-makes-code
Copy link

ChunkRenderDispatcher$RenderChunk$RebuildTask$handleBlockEntity (ChunkBuilder$BuiltChunk$RebuildTask$addBlockEntity on yarn) isn't called on sodium's side, and that's what FlyWheel uses to re-add the BlockEntities.

@plapl1
Copy link

plapl1 commented Jan 11, 2022

Same issue exists on Canvas Renderer, unsure if I should create a new issue since it might be the same error causing it on both renderers.

@Oliver-makes-code
Copy link

As of the latest version, It straight up crashes during startup due to a mixin conflict with LevelRendererMixin and MixinWorldRenderer on Flywheel and Sodium respectively

@AeiouEnigma
Copy link
Author

As of the latest version, It straight up crashes during startup due to a mixin conflict with LevelRendererMixin and MixinWorldRenderer on Flywheel and Sodium respectively

The crash will be fixed in the next Flywheel update.

@RedWideWeb
Copy link

Partially fixed in builds 343 and 344. Still crashes occasionally but it works now. World launches, belts and entities are rendered properly. Even Shaders are partially working. Great job, @AeiouEnigma

@AeiouEnigma
Copy link
Author

Appreciate it, but truly the credit needs to go to Jozufozu and Pepper :)

I only took 2 minutes to merge the existing code from the forge version.

To avoid crashes, just make sure to set /flywheel backend off. Shaders seem to work fine with contraptions if you use Iris's new configuration menu to disable shader-based shadows, if the option exists for your particular shaderpack.

@RedWideWeb
Copy link

To avoid crashes, just make sure to set /flywheel backend off. Shaders seem to work fine with contraptions if you use Iris's new configuration menu to disable shader-based shadows, if the option exists for your particular shaderpack.

Will try that. Thanks!

@RedWideWeb
Copy link

RedWideWeb commented Jan 20, 2022

Why is this issue still open?

@AeiouEnigma
Copy link
Author

Why is this issue still open?

Because using Sodium, even with Indium installed, still results in severe rendering issues when the Flywheel backend is enabled.

@DarianLStephens
Copy link

I was trying it a few minutes ago, and everything looked how I'd expect coming from the Forge version.

@RedWideWeb
Copy link

Why is this issue still open?

Because using Sodium, even with Indium installed, still results in severe rendering issues when the Flywheel backend is enabled.

Yeah, I see. Okay

@RedWideWeb
Copy link

RedWideWeb commented Jan 20, 2022

I was trying it a few minutes ago, and everything looked how I'd expect coming from the Forge version.

Have you disabled flywheel backend?

@DarianLStephens
Copy link

DarianLStephens commented Jan 20, 2022

I haven't.
Just installed the latest artifact and everything's peachy.

@DarianLStephens
Copy link

Screenshot for reference:
2022-01-21_10 27 14

@RedWideWeb
Copy link

Screenshot for reference:
2022-01-21_10 27 14

Flywheel: Off

@DarianLStephens
Copy link

Wait, is it off by default? I just noticed that text on the right, but I haven't run that /flywheel backend off command.

@RedWideWeb
Copy link

Wait, is it off by default? I just noticed that text on the right, but I haven't run that /flywheel backend off command.

Not sure. Maybe it should be Off

@RedWideWeb
Copy link

@AeiouEnigma should Flywheel be marked as Off in F3 menu

@DarianLStephens
Copy link

DarianLStephens commented Jan 20, 2022

Running /flywheel backend batching crashed the game instantly.
Running /flywheel backend instancing does the same.

I guess that means it was off the entire time and I just never noticed.

@AeiouEnigma
Copy link
Author

Running /flywheel backend batching crashed the game instantly. Running /flywheel backend instancing does the same.

Known issue with Iris, though we haven't actually opened an Issue about that

@RedWideWeb
Copy link

RedWideWeb commented Jan 20, 2022

Running /flywheel backend batching crashed the game instantly. Running /flywheel backend instancing does the same.

I guess that means it was off the entire time and I just never noticed.

For me it was instancing by default. So before I disabled it i ran just /flywheel backend and it printed default value which was instancing for me.

@AeiouEnigma
Copy link
Author

Running the /flywheel backend instancing or /flywheel backend batching commands with sodium installed results in various blocks having messed up or non-existent rendering

@DarianLStephens
Copy link

DarianLStephens commented Jan 20, 2022

Yeah, Iris does not like this.
Turning shaders on made contraptions (the windmill) disappear, and turning them back off just crashed the game.

With Iris off, it's defaulting to Instancing, and I'm seeing the same issues as here.
2022-01-21_10 33 35

Batching just makes it all disappear:
2022-01-21_10 34 34

@RedWideWeb
Copy link

Yeah, Iris does not like this. Turning shaders on made contraptions (the windmill) disappear, and turning them back off just crashed the game.

With Iris off, it's defaulting to Instancing, and I'm seeing the same issues as here. 2022-01-21_10 33 35

For shaders disable Realtime shadows. This fixes the Windmills

@AeiouEnigma
Copy link
Author

If the world loads while the flywheel backend is enabled, things will probably look just fine until the renderer reloads.

Contraptions not rendering with certain shaders enabled is another known issue. If the shaderpack has an option to disable shadows, that may 'fix' the problem.

@DarianLStephens
Copy link

DarianLStephens commented Jan 20, 2022

Interestingly, newly-placed blocks seem to render just fine, but toggling Flywheel or using F3+A makes things disappear.
2022-01-21_10 37 10
2022-01-21_10 37 40

The cogwheel was even spinning.

@DarianLStephens
Copy link

More of things working after replacing the blocks manually.
2022-01-21_10 40 44

@RedWideWeb
Copy link

There are no shafts on the gearboxes

@AeiouEnigma
Copy link
Author

Alright I appreciate it but you can both stop updating on every minor detail lol, the issue is known

@RedWideWeb
Copy link

Alright I appreciate it but you can both stop updating on every minor detail lol, the issue is known

Okay, sorry.

@AeiouEnigma
Copy link
Author

No harm done 😄

@PepperCode1
Copy link
Member

This was fixed completely in Flywheel as of yesterday, and I am not aware of any issues with Create specifically, so I am closing this issue. If there are other problems please open a new one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1.18 bug Something isn't working
Projects
None yet
Development

No branches or pull requests

7 participants