package zone.oat.supersecretrevival; import net.minecraft.client.MinecraftClient; import net.minecraft.client.render.GameRenderer; import net.minecraft.util.Identifier; import zone.oat.supersecretrevival.mixin.GameRendererAccessorMixin; import java.util.Random; public class ShaderControls { private static final GameRenderer renderer = MinecraftClient.getInstance().gameRenderer; private static final Random RANDOM = new Random(); public static void setRandomShader() { Identifier shader = GameRendererAccessorMixin.getShaderLocations()[RANDOM.nextInt(GameRenderer.SHADER_COUNT)]; Mod.LOGGER.info("Loading shader " + shader.getPath()); ((GameRendererAccessorMixin) renderer).invokeLoadShader(shader); } public static void disableShader() { Mod.LOGGER.info("Disabling all shaders"); renderer.disableShader(); } }