feat/fix: misc shader changes (fix normals, lighting, uv)
This commit is contained in:
@@ -1,13 +1,17 @@
|
||||
float ao = smoothstep(0.0, 0.7, vGrassUv.y);
|
||||
ao = mix(0.05, 1.0, ao);
|
||||
|
||||
vec3 rootColor = diffuseColor.rgb * 0.4;
|
||||
vec3 tipColor = diffuseColor.rgb * 1.5;
|
||||
float ao = smoothstep(0.0, 0.8, vGrassUv.y);
|
||||
ao = mix(0.15, 1.0, ao);
|
||||
|
||||
vec3 rootColor = diffuseColor.rgb * 0.35;
|
||||
vec3 tipColor = diffuseColor.rgb * 1.3;
|
||||
vec3 grassColor = mix(rootColor, tipColor, vGrassUv.y);
|
||||
grassColor *= ao;
|
||||
|
||||
float translucency = pow(vGrassUv.y, 2.0) * 0.5;
|
||||
grassColor += diffuseColor.rgb * translucency;
|
||||
vec3 viewDir = normalize(cameraPosition - vWorldPos);
|
||||
vec3 lightDir = normalize(vec3(15.0, 25.0, 15.0));
|
||||
|
||||
diffuseColor.rgb = grassColor;
|
||||
float backLighting = max(0.0, dot(viewDir, -lightDir));
|
||||
backLighting = pow(backLighting, 3.0) * smoothstep(0.2, 1.0, vGrassUv.y);
|
||||
|
||||
vec3 sssColor = vec3(0.4, 0.8, 0.3) * diffuseColor.rgb;
|
||||
grassColor += sssColor * backLighting * 1.5;
|
||||
|
||||
diffuseColor.rgb = grassColor * ao;
|
||||
Reference in New Issue
Block a user