Stereo's Default+

Stereo's Default+

29.1k Downloads

[Issue] Shader fails to load in Nether

Inderix opened this issue · 2 comments

commented

Describe the bug
Iris reports the shader fails to load in the Nether. End dimension is untested, Overworld is perfectly fine.

To Reproduce
Steps to reproduce the behavior:

  1. Enable shader in Iris options
  2. Go to Nether
  3. Observe bug. Toggling the shader with the Iris keybind, and reloading the shader does not resolve the issue.

Expected behavior
The shader continues to function in the Nether

F3 Screenshots
Image

Shader config file:
Stereo's_Default+_v2.4.zip.txt

Info

  • GPU: AMD RX6400
  • CPU: Intel Core i7-4770
  • MC Version: 1.20.1, Fabric Loader 0.16.10
  • Shader Version: 2.4

Additional context
Iris version 1.7.5
Iris error output:

terrain_solid.vsh: terrain_solid.vsh: 0:40(1): error: `texcoord' undeclared
0:40(1): error: value of type vec2 cannot be assigned to variable of type error
0:41(1): error: `lmcoord' undeclared
0:41(1): error: value of type vec2 cannot be assigned to variable of type error
0:43(13): error: `gbufferModelViewInverse' undeclared
0:43(13): error: operands to arithmetic operators must be numeric
0:45(23): error: `gbufferModelViewInverse' undeclared
0:45(23): error: operands to arithmetic operators must be numeric
0:45(22): error: type mismatch
0:46(17): warning: `feetPlayerPos' used uninitialized
0:46(33): error: `cameraPosition' undeclared
0:46(17): error: operands to arithmetic operators must be numeric
0:48(5): error: `mc_Entity' undeclared
0:48(5): error: type mismatch
0:48(5): error: operands of `==' must have the same type
0:49(5): warning: `worldPos' used uninitialized
0:50(22): error: `vworldpos' undeclared
0:50(22): error: type mismatch
0:50(22): error: operands to arithmetic operators must be numeric
0:50(16): error: no matching function for call to `fract(error)'; candidates are:
0:50(16): error:    float fract(float)
0:50(16): error:    vec2 fract(vec2)
0:50(16): error:    vec3 fract(vec3)
0:50(16): error:    vec4 fract(vec4)
0:50(16): error:    double fract(double)
0:50(16): error:    dvec2 fract(dvec2)
0:50(16): error:    dvec3 fract(dvec3)
0:50(16): error:    dvec4 fract(dvec4)
0:51(36): error: `frameTimeCounter' undeclared
0:51(36): error: operands to arithmetic operators must be numeric
0:51(63): error: `vworldpos' undeclared
0:51(63): error: type mismatch
0:51(63): error: operands to arithmetic operators must be numeric
0:51(36): error: operands to arithmetic operators must be numeric
0:51(82): error: `vworldpos' undeclared
0:51(82): error: type mismatch
0:51(82): error: operands to arithmetic operators must be numeric
0:51(36): error: operands to arithmetic operators must be numeric
0:51(27): error: operands to arithmetic operators must be numeric
0:51(23): error: no matching function for call to `sin(error)'; candidates are:
0:51(23): error:    float sin(float)
0:51(23): error:    vec2 sin(vec2)
0:51(23): error:    vec3 sin(vec3)
0:51(23): error:    vec4 sin(vec4)
0:51(15): error: operands to arithmetic operators must be numeric
0:51(115): error: `frameTimeCounter' undeclared
0:51(115): error: operands to arithmetic operators must be numeric
0:51(142): error: `vworldpos' undeclared
0:51(142): error: type mismatch
0:51(142): error: operands to arithmetic operators must be numeric
0:51(115): error: operands to arithmetic operators must be numeric
0:51(160): error: `vworldpos' undeclared
0:51(160): error: type mismatch
0:51(160): error: operands to arithmetic operators must be numeric
0:51(115): error: operands to arithmetic operators must be numeric
0:51(111): error: no matching function for call to `sin(error)'; candidates are:
0:51(111): error:    float sin(float)
0:51(111): error:    vec2 sin(vec2)
0:51(111): error:    vec3 sin(vec3)
0:51(111): error:    vec4 sin(vec4)
0:51(103): error: operands to arithmetic operators must be numeric
0:51(15): error: operands to arithmetic operators must be numeric
0:52(34): warning: `FractY' used uninitialized
0:52(49): warning: `FractY' used uninitialized
0:52(26): warning: `Waves' used uninitialized
0:56(8): error: `gbufferModelView' undeclared
0:56(8): error: operands to arithmetic operators must be numeric


commented

Fair enough, I wish you well on your future endeavors!

commented

As far as I can test, this happens all the way back to Iris 1.5.2 on 1.19.4, which would have been just after the last time I tested this shader, which was when a release on modrinth was made. Overall no work on this shader has been done in the past 3 years, and should be considered unsupported/EOL.

It seems to be that I've made a mistake somewhere in the code that only appears when Waving Liquids is set to false, and only appears in the Nether and End because the Optifine spec allow(s/ed) for there to be differing shaders depending on dimension, and Iris respects this spec (for now).

As I'm no longer working on this shader (too busy, don't know GLSL all that well anymore, and a multitude of other things), your best bet would be to keep waving liquids on if you wish to enjoy shaders in other dimensions.