Attempting to implement SSBO results in failure to load the shader on supported API
EtiTheSpirit opened this issue ยท 1 comments
What happened?
Attempting to implement an SSBO causes my shader to fail to load. A minimal reproduction is possible.
Reproduction:
Create a minimal shader pack. This shader pack should include shader.properties
and gbuffers_textured.fsh
The contents of shader.properties
should be as follows:
iris.features.required=SSBO
bufferObject.0=16
The contents of gbuffers_textured.fsh
should be as follows:
#version 330 compatibility
// #define USE_BUFFERS
#ifdef USE_BUFFERS
layout(std430, binding = 0) buffer testBuffer {
vec4 testValue;
};
#endif
void main() {
gl_FragData[0] = vec4(0, 0, 0, 1);
}
- This shader should function; all entities and the world should turn matte black.
- Edit the shader, and uncomment line 2
#define USE_BUFFERS
- This shader will fail to load with the provided error below.
Screenshots
No response
Relevant log output
The error is quite strange. This only ever happens when I have a shader issue, and shaders otherwise work perfectly.
[30Sep2024 15:35:47.735] [Render thread/ERROR] [Oculus/]: Failed to create shader rendering pipeline, disabling shaders!
java.lang.RuntimeException: net.minecraft.server.ChainedJsonException: Invalid shaders/core/textured.json: The call m_166612_ is not cancellable.
at net.irisshaders.iris.pipeline.IrisRenderingPipeline.lambda$new$12(IrisRenderingPipeline.java:429) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.programs.ShaderMap.<init>(ShaderMap.java:21) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.IrisRenderingPipeline.<init>(IrisRenderingPipeline.java:413) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.Iris.createPipeline(Iris.java:608) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.PipelineManager.preparePipeline(PipelineManager.java:33) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.Iris.reload(Iris.java:559) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.Iris.toggleShaders(Iris.java:214) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.Iris.handleKeybinds(Iris.java:187) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.Iris.onKeyInput(Iris.java:129) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.minecraftforge.eventbus.EventBus.doCastFilter(EventBus.java:260) ~[eventbus-6.0.5.jar%23137!/:?]
at net.minecraftforge.eventbus.EventBus.lambda$addListener$11(EventBus.java:252) ~[eventbus-6.0.5.jar%23137!/:?]
at net.minecraftforge.eventbus.EventBus.post(EventBus.java:315) ~[eventbus-6.0.5.jar%23137!/:?]
at net.minecraftforge.eventbus.EventBus.post(EventBus.java:296) ~[eventbus-6.0.5.jar%23137!/:?]
at net.minecraftforge.client.ForgeHooksClient.onKeyInput(ForgeHooksClient.java:738) ~[forge-1.20.1-47.3.0-universal.jar%23431!/:?]
at net.minecraft.client.KeyboardHandler.m_90893_(KeyboardHandler.java:431) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.KeyboardHandler.m_167831_(KeyboardHandler.java:462) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:102) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.KeyboardHandler.m_90938_(KeyboardHandler.java:461) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at org.lwjgl.glfw.GLFWKeyCallbackI.callback(GLFWKeyCallbackI.java:44) ~[lwjgl-glfw-3.3.1.jar%2386!/:build 7]
at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.3.1.jar%2398!/:build 7]
at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3403) ~[lwjgl-glfw-3.3.1.jar%2386!/:build 7]
at com.mojang.blaze3d.systems.RenderSystem.pollEvents(RenderSystem.java:201) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at com.mojang.blaze3d.systems.RenderSystem.flipFrame(RenderSystem.java:219) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at com.mojang.blaze3d.platform.Window.m_85435_(Window.java:274) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1170) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.main.Main.main(Main.java:218) ~[minecraft-1.20.1-client.jar:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.3.0.jar:?]
at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.3.0.jar:?]
at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$makeService$0(CommonClientLaunchHandler.java:25) ~[fmlloader-1.20.1-47.3.0.jar:?]
at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar:?]
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar:?]
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar:?]
at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar:?]
at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar:?]
at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar:?]
at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar:?]
at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
at io.github.zekerzhayard.forgewrapper.installer.Main.main(Main.java:67) ~[?:?]
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:100) ~[?:?]
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129) ~[?:?]
at org.prismlauncher.EntryPoint.main(EntryPoint.java:70) ~[?:?]
Caused by: net.minecraft.server.ChainedJsonException: Invalid shaders/core/textured.json: The call m_166612_ is not cancellable.
at net.minecraft.server.ChainedJsonException.m_135906_(ChainedJsonException.java:48) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.renderer.ShaderInstance.<init>(ShaderInstance.java:187) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.renderer.ShaderInstance.<init>(ShaderInstance.java:103) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.irisshaders.iris.pipeline.programs.ExtendedShader.<init>(ExtendedShader.java:81) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.programs.ShaderCreator.create(ShaderCreator.java:111) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.IrisRenderingPipeline.createShader(IrisRenderingPipeline.java:699) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.IrisRenderingPipeline.createShader(IrisRenderingPipeline.java:676) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.IrisRenderingPipeline.lambda$new$12(IrisRenderingPipeline.java:422) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
... 49 more
Caused by: org.spongepowered.asm.mixin.injection.callback.CancellationException: The call m_166612_ is not cancellable.
at org.spongepowered.asm.mixin.injection.callback.CallbackInfo.cancel(CallbackInfo.java:101) ~[Connector-1.0.0-beta.45+1.20.1.jar%23289%23292!/:0.12.11+mixin.0.8.5]
at com.mojang.blaze3d.shaders.Program.handler$bdk000$oculus$iris$causeException(Program.java:535) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at com.mojang.blaze3d.shaders.Program.m_166612_(Program.java:68) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at com.mojang.blaze3d.shaders.Program.m_166604_(Program.java:51) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.renderer.ShaderInstance.m_173340_(ShaderInstance.java:222) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.renderer.ShaderInstance.<init>(ShaderInstance.java:172) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.minecraft.client.renderer.ShaderInstance.<init>(ShaderInstance.java:103) ~[client-1.20.1-20230612.114412-srg.jar%23426!/:?]
at net.irisshaders.iris.pipeline.programs.ExtendedShader.<init>(ExtendedShader.java:81) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.programs.ShaderCreator.create(ShaderCreator.java:111) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.IrisRenderingPipeline.createShader(IrisRenderingPipeline.java:699) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.IrisRenderingPipeline.createShader(IrisRenderingPipeline.java:676) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
at net.irisshaders.iris.pipeline.IrisRenderingPipeline.lambda$new$12(IrisRenderingPipeline.java:422) ~[oculus-mc1.20.1-1.7.0.jar%23379!/:?]
Minecraft Version
1.20.1
Oculus Version
Oculus 1.7.0
Rubidium / Embeddium Version
Embeddium 0.3.31
Operating System
Windows 10
What is your GPU?
Nvidia RTX 3070TI
Java Version
17.0.1
Additional context
No response