Flywheel (Legacy)

Flywheel (Legacy)

40M Downloads

[Suggestion] Use optimizations with shaders

Chris6ix opened this issue ยท 1 comments

commented

I recently tried to use shaders in my Create based custom modpack, which caused the performance in certain situations/areas (E.g. rendering a lot of waterwheels) to be awful. While troubleshooting, I learned that Flywheel just disables its optimizations when shaders are used and that there is a mod to force Flywheel to keep them enabled. This works flawlessly and completely fixes the performance issues, so I am very confused why Flywheel even disables the optimizations, as that just ruins the performance for seemingly no reason.

So I suggest either changing that so that it doesn't disable the optimizations, or if there is some reason why you should be able to disable them, then adding a setting into Flywheel that makes Flywheel continue to use the optimizations, even if there is a shader active.

This would prevent people from having awful performance when using shaders, having to troubleshoot the issue and then having to install a separate mod to fix Flywheel.

commented

To my understand, the mod you're referencing may work well for some shaderpacks and not at all for others. I'm glad it was able to resolve your particular performance concerns, but I must emphasize that it is not a generally correct solution.

For some background, flywheel relies on its own shader system to achieve its performance. Shader mods like Iris and Optifine also implement a shader system to allow you to use fancy shaderpacks.

These 2 systems are NOT fundamentally incompatible in the sense that work can be done to get them to play nice together, however they cannot work together out of the box. Dropping a second engine into your car will not make it faster, and where would you even put it besides? There are significant technical challenges to overcome, and even then the shader development community needs to be willing to implement support in their shaderpacks like the recently events with distant horizons.

If you think you're up for it we'd love to take on another maintainer to work with Iris and the community to create a Flywheel backend that bridges the gap between the two shader systems, but if not we hope you can appreciate the scope of the technical challenge at hand.

I'll leave this open because this is a legitimate suggestion and something I've personally wanted for a while.