Prevent cloud "pop" when an overlapping cloud fades out to nothing

This commit is contained in:
2023-03-21 14:46:41 +00:00
parent e56ca3dd8d
commit d5fbc06332
7 changed files with 40 additions and 17 deletions
+4 -3
View File
@@ -21,14 +21,15 @@ void main()
//float rad = vCenterSize.w;
float rad = vCenterSize.w*0.5;
float h = (1-d) * rad;
fPos = vec4(vPosID.xy, vPosID.z + h, 1);
fPos = vec4(vPosID.xy, vPosID.z + h, vCol.w*(1-d));
float h1 = float (1 - 0.01*fPos.z);
//vec3 fn1 = fPos.z*(1-d)*normalize(vec3(vCenterSize.xyz - fPos.xyz));
//vec3 fn1 = fPos.z*normalize(vec3(vCenterSize.xyz - fPos.xyz));
//vec3 fn1 = vec3(vCenterSize.xyz - fPos.xyz);
vec3 fn1 = fPos.z*(1-d)*normalize(vec3(vCenterSize.xyz - (fPos.xyz + vec3(0,0,0.5*h))));
//vec3 fn1 = fPos.z*(1-d)*normalize(vec3(vCenterSize.xyz - (fPos.xyz + vec3(0,0,0.5*h))));
vec3 fn1 = fPos.z*normalize(vec3(vCenterSize.xyz - (fPos.xyz + vec3(0,0,0.5*h))));
//fNorm = vec4(0.5*fn1.xy,fn1.z, 0.5);
//fNorm = vec4(fn1.xyz, fCol.w);
fNorm = vec4(fn1,1);
fNorm = vec4(fn1,fPos.w);
//fNorm = vec4(0,0,1, 1);
}