Lack of custom uniform support in Iris breaks the biome temperature checks used for rain reflections in Sildur's Vibrant Shaders.
akemin-dayo opened this issue · 3 comments
What happened?
(Apologies for the second bug report in such a short timespan. ;P)
The biome temperature parameter used for rain reflections in Sildur's Vibrant Shaders is broken (or possibly completely unimplemented…?) on Iris.
The relevant GLSL code can be found in composite1.fsh
:
#ifdef BiomeCheck
bool isRaining = (BiomeTemp >= 0.15) && (BiomeTemp <= 1.0) && iswet > 0.01 && land && !transparency && isEyeInWater == 0.0;
#else
bool isRaining = iswet > 0.01 && land && !transparency && isEyeInWater == 0.0;
#endif
BiomeTemp
is defined in shaders.properties
as:
# Biome temperature
uniform.float.BiomeTemp=temperature
I've confirmed that this behaviour occurs on the following Minecraft + Iris version combinations:
- Minecraft 1.19 + Iris 1.2.5
- Minecraft 1.18.2 + Iris 1.2.5
- Minecraft 1.18.1 + Iris 1.2.0-pre
- Minecraft 1.17.1 + Iris 1.2.5
- MInecraft 1.16.5 + Iris 1.2.5
It seems likely to me that this feature never worked correctly on Iris, and it just so happens that no one had noticed until now.
Workaround
Users can work around this issue by disabling biome temperature checks entirely, either by setting the configuration key BiomeCheck=false
, or simply commenting out #define BiomeCheck
in shaders.settings
.
※ NOTE: Using this workaround will result in rain reflections rendering in dry biomes you wouldn't expect them to, such as deserts.
Screenshots
Expected behaviour from Minecraft 1.19 + OptiFine+OptiFabric 1.19 HD U H8 (※ Ignore the fact that the beacons aren't rendering, that's a separate bug with OptiFabric+Debugify):
Incorrect behaviour from Minecraft 1.19 + Iris 1.2.5 (BiomeCheck
is present / enabled):
Workaround to get rain reflections to render on Minecraft 1.19 + Iris 1.2.5 (BiomeCheck
is commented out / disabled):
Operating System
Windows 10 19044.1826 21H2 and macOS 12.4 21F79
What is your GPU?
NVIDIA RTX 2060 (NVGRD 512.95, DCH) and Apple G13J
#222 ?
This is indeed another symptom of #1027.
Closing this issue as the hard-coded BiomeTemp
uniform that was added in 492b786 fixes this functionality at least specifically for Sildur's Vibrant Shaders.