Sodium Shadowy Path Blocks

Sodium Shadowy Path Blocks

650k Downloads

Some shadows while using shaders are overly dark while using shaders (doesn't happen on Optifine)

mrjasonn opened this issue ยท 9 comments

commented

With Only affect path blocks turned off (Shadowyness 100% used):
2024-03-07_21 05 10
Just turn on the Only affect path blocks with this shaders in similar conditions to see that it should not be that dark (you will get similar looks with Optifine if you turn on this option in this mod) Tested on a Mac.
Shaders used: Complementary Reimagined
Minecraft version: 1.20.6

Mod list

- boostedbrightness 2.2.0 - fabric-api 0.99.0+1.20.6 - immediatelyfast 1.2.15+1.20.6 - iris 1.7.0+mc1.20.6 - lithium 0.12.3 - reeses-sodium-options 1.7.2+mc1.20.5-build.103 - sodium 0.5.8+mc1.20.6 - sodium-extra 0.5.5+mc1.20.6-build.118 - sspb 3.3.0 - wi_zoom 1.5-MC1.20.6

Path blocks look the same with either Iris + SSPB and Optifine using these shaders on a simple village test, so don't worry about the main blocks that this mod targets
commented

@Rynnavinx It would be very nice if you can get this fixed for the Minecraft 1.20.5 release, I'm guessing we could just detect if shaders are on (not a fake on where shaders are enabled but there is no active shaderpack because apparently Iris can do that), and if they are on then we can disable the shadows added by the mod. See the Iris config file and it should help you understand what I mean.

commented

The thing is that not all shaders are created equal, and as such, I suspect that this issue may not be present on all shaders. I assume the issue is that shadows or AO or something from the shaderpack is overlapping with the strengthened AO (shadowyness) from this mod, so shaders without heavy shadows or added AO might not be affected. As such, force disabling the shadowyness from SSPB when any shader is in use might be too harsh if there are shaders without this issue.

That's just what I'm speculating though. For now, you can just keep using the "only affect path blocks" option, but I'll look into this when I can.

commented

The thing is that not all shaders are created equal, and as such, I suspect that this issue may not be present on all shaders. I assume the issue is that shadows or AO or something from the shaderpack is overlapping with the strengthened AO (shadowyness) from this mod, so shaders without heavy shadows or added AO might not be affected. As such, force disabling the shadowyness from SSPB when any shader is in use might be too harsh if there are shaders without this issue.

That's just what I'm speculating though. For now, you can just keep using the "only affect path blocks" option, but I'll look into this when I can.

@Rynnavinx Maybe the mod can just detect if shaders are on and if they are on disable itself until they are off? Please keep in mind though Iris can have shaders on, whilst not having shaders actually on (you will see in F3 that shaders are enabled but it can say Shaderpack (off) if none is selected) You may want to look into this solution to see if it's viable, and if needed, what would be needed to be added or changed about this solution.

commented

@Rynnavinx I'm guessing the suggestion I gave above is the best way to resolve this bug, just to let you know.

commented

@Rynnavinx This might be related to shaders being able to turn on old lighting, just trying to help, can't guarantee this is best solution.

commented

@Rynnavinx This might be related to shaders being able to turn on old lighting, just trying to help, can't guarantee this is best solution.

Do you mean vanilla lighting? I feel like this shouldn't be the case. SSPB shouldn't work on these blocks if that were true.

@Rynnavinx Maybe the mod can just detect if shaders are on and if they are on disable itself until they are off? Please keep in mind though Iris can have shaders on, whilst not having shaders actually on (you will see in F3 that shaders are enabled but it can say Shaderpack (off) if none is selected) You may want to look into this solution to see if it's viable, and if needed, what would be needed to be added or changed about this solution.

This is not a good solution because this problem does not affect every shader. Most shaders I've tried don't have this issue. I can't even seem to produce this issue with the shaders you used (I'm assuming you are also using the latest version of Complementary Reimagined, which is r5.1.1, and used default settings). This is also with Only affect path blocks off and Shadowyness 100%. Only Sodium 0.5.8, SSPB 3.3.0, and Iris 1.7.0 were installed when I tested this. Were you using other mods/settings that could have caused this?

2024-05-28_12 20 55

For now, I'd just turn Only affect path blocks on if that fixes it. I can't really figure out what could cause this in SSPB alone.

commented

@Rynnavinx This might be related to shaders being able to turn on old lighting, just trying to help, can't guarantee this is best solution.

Do you mean vanilla lighting? I feel like this shouldn't be the case. SSPB shouldn't work on these blocks if that were true.

@Rynnavinx Maybe the mod can just detect if shaders are on and if they are on disable itself until they are off? Please keep in mind though Iris can have shaders on, whilst not having shaders actually on (you will see in F3 that shaders are enabled but it can say Shaderpack (off) if none is selected) You may want to look into this solution to see if it's viable, and if needed, what would be needed to be added or changed about this solution.

This is not a good solution because this problem does not affect every shader. Most shaders I've tried don't have this issue. I can't even seem to produce this issue with the shaders you used (I'm assuming you are also using the latest version of Complementary Reimagined, which is r5.1.1, and used default settings). This is also with Only affect path blocks off and Shadowyness 100%. Only Sodium 0.5.8, SSPB 3.3.0, and Iris 1.7.0 were installed when I tested this. Were you using other mods/settings that could have caused this?

2024-05-28_12 20 55

For now, I'd just turn Only affect path blocks on if that fixes it. I can't really figure out what could cause this in SSPB alone.

When you asked if I meant vanilla lighting, no. Turning on the old lighting means that Iris won't strip out the directional lighting while that shader is being used.
I can tell you that I was on a Mac when I tested this, and Macs don't support Iris's DSA functionality. This might be a reason. Another reason could be my mods, the mod list has been attached in the main thread. So with this information, please do more testing. @Rynnavinx

commented

When you say "Iris won't strip out the directional lighting while that shader is being used", do you mean that, when using shaders, Iris doesn't disable the ambient occlusion (what this mod is calling shadowyness) in the edges and corners between blocks? Because I currently can't think of anything else "directional lighting" would refer to when shaders aren't being used.

If that's what you mean, then it's not the issue. The ambient occlusion still being on does not cause corners and edges to look that dark in my game. I can turn the shadowyness up or down, and the ambient occlusion will get lighter or darker, but never as dark as your screenshot.

If that's not what you mean, then sorry again.

As for the other things, I tried with the mods you used, and I cannot reproduce the issue. Changing the boosted brightness value to negatives or thousands did not produce the issue. I also built a version of Iris 1.7.0 where I forced dsaState in the IrisRenderSystem class to be unsupported, hopefully to emulate how your mac doesn't support DSA, but that also did not produce the issue (though from my limited knowledge of what DSA is, I didn't think it would).

The only thing that produced a similar result was when I went to "Video Settings > Shader Packs > Shader Pack Settings > Lighting", then changed the two "Edge Shadow Intensity" settings at the bottom. It doesn't look exactly how your screenshot looked, but maybe other shader settings were affecting it too. Maybe you should check these two settings (the default for both is 100).
2024-08-11_03 38 34

commented

When you say "Iris won't strip out the directional lighting while that shader is being used", do you mean that, when using shaders, Iris doesn't disable the ambient occlusion (what this mod is calling shadowyness) in the edges and corners between blocks? Because I currently can't think of anything else "directional lighting" would refer to when shaders aren't being used.

If that's what you mean, then it's not the issue. The ambient occlusion still being on does not cause corners and edges to look that dark in my game. I can turn the shadowyness up or down, and the ambient occlusion will get lighter or darker, but never as dark as your screenshot.

If that's not what you mean, then sorry again.

As for the other things, I tried with the mods you used, and I cannot reproduce the issue. Changing the boosted brightness value to negatives or thousands did not produce the issue. I also built a version of Iris 1.7.0 where I forced dsaState in the IrisRenderSystem class to be unsupported, hopefully to emulate how your mac doesn't support DSA, but that also did not produce the issue (though from my limited knowledge of what DSA is, I didn't think it would).

The only thing that produced a similar result was when I went to "Video Settings > Shader Packs > Shader Pack Settings > Lighting", then changed the two "Edge Shadow Intensity" settings at the bottom. It doesn't look exactly how your screenshot looked, but maybe other shader settings were affecting it too. Maybe you should check these two settings (the default for both is 100). 2024-08-11_03 38 34

@Rynnavinx Hello, sorry for the late reply. It is probable that Iris doesn't strip out the AO, but it does for everything else, as it is not specially designed to be compatible with this mod.