Revert "remove underwater distortion. make AO in sunlight also be on SSS."

This reverts commit f8d1b0b8da.
This commit is contained in:
MikiP98 2024-11-16 21:39:26 +01:00
parent 8f2dd50f81
commit cf3346232e
3 changed files with 9 additions and 19 deletions

View File

@ -1353,24 +1353,14 @@ void main() {
float skylight = 1.0; float skylight = 1.0;
#if indirect_effect == 0 || indirect_effect == 1 || indirect_effect == 2 #if indirect_effect == 0 || indirect_effect == 1 || indirect_effect == 2
// float SkylightDir = (slopednormal / dot(abs(slopednormal),vec3(1.0))).y *1.5; float SkylightDir = (slopednormal / dot(abs(slopednormal),vec3(1.0))).y*1.5;
// if(isGrass) SkylightDir = 1.5; if(isGrass) SkylightDir = 1.5;
// skylight = max(pow((FlatNormals).y*0.5+0.5,0.1) + SkylightDir, 0.2 + (1-lightmap.y)*0.8); skylight = max(pow((FlatNormals).y*0.5+0.5,0.1) + SkylightDir, 0.2 + (1-lightmap.y)*0.8);
// #if indirect_effect == 1
// skylight = min(skylight, mix(0.95, 2.5, pow(1-pow(1-SSAO_SSS.x, 0.5),2.0) ));
// #endif
float SkylightDir = (slopednormal / dot(abs(slopednormal),vec3(1.0))).y;
if(isGrass) SkylightDir = 1.0;
SkylightDir = clamp(SkylightDir*0.7+0.3, 0.0, pow(1-pow(1-SSAO_SSS.x, 0.5),2.0) * 0.7 + 0.3);
skylight = mix(0.2 + 2.3*(1.0-lightmap.y), 2.5, SkylightDir);
#if indirect_effect == 1
skylight = min(skylight, mix(0.95, 2.5, pow(1-pow(1-SSAO_SSS.x, 0.5),2.0) ));
#endif
#endif #endif
#if indirect_effect == 3 || indirect_effect == 4 #if indirect_effect == 3 || indirect_effect == 4
@ -1497,7 +1487,7 @@ void main() {
#ifdef OVERWORLD_SHADER #ifdef OVERWORLD_SHADER
// Direct_lighting = max(shadowColor*NdotL, SSSColor); // Direct_lighting = max(shadowColor*NdotL, SSSColor);
#ifdef AO_in_sunlight #ifdef AO_in_sunlight
Direct_lighting = (shadowColor*NdotL + SSSColor) * (AO*0.7+0.3); Direct_lighting = shadowColor*NdotL*(AO*0.7+0.3) + SSSColor;
#else #else
Direct_lighting = shadowColor*NdotL + SSSColor; Direct_lighting = shadowColor*NdotL + SSSColor;
#endif #endif

View File

@ -68,7 +68,7 @@ void applyGameplayEffects(inout vec3 color, in vec2 texcoord, float noise){
float waterDrops = texture2D(noisetex, (texcoord - vec2(0.0, scale.z)) * scale.xy).r ; float waterDrops = texture2D(noisetex, (texcoord - vec2(0.0, scale.z)) * scale.xy).r ;
if(isEyeInWater == 1) waterDrops = 0.0; if(isEyeInWater == 1) waterDrops = waterDrops*waterDrops * 0.3;
if(isEyeInWater == 0 && exitWater > 0.0) waterDrops = sqrt(min(max(waterDrops - (1.0-sqrt(exitWater))*0.7,0.0) * (1.0 + exitWater),1.0)) * 0.3; if(isEyeInWater == 0 && exitWater > 0.0) waterDrops = sqrt(min(max(waterDrops - (1.0-sqrt(exitWater))*0.7,0.0) * (1.0 + exitWater),1.0)) * 0.3;
// apply distortion effects for exiting water and under water // apply distortion effects for exiting water and under water

View File

@ -384,7 +384,7 @@ vec4 GetVolumetricClouds(
#if defined DISTANT_HORIZONS #if defined DISTANT_HORIZONS
float maxdist = dhFarPlane; float maxdist = dhFarPlane;
#else #else
float maxdist = far*4.0; float maxdist = far + 16*5.0;
#endif #endif
float lViewPosM = length(viewPos) < maxdist ? length(viewPos) - 1.0 : 100000000.0; float lViewPosM = length(viewPos) < maxdist ? length(viewPos) - 1.0 : 100000000.0;