feat/fix: misc shader changes (fix normals, lighting, uv)

This commit is contained in:
2026-06-01 16:56:28 -03:00
parent 569a4f29fb
commit aeee2158ba
3 changed files with 83 additions and 76 deletions
@@ -1,3 +1,5 @@
vGrassUv = uv;
vec4 worldPos = modelMatrix * instanceMatrix * vec4(0.0, 0.0, 0.0, 1.0);
float gx = worldPos.x;
float gz = worldPos.z;
@@ -8,7 +10,6 @@ float windSpeed = 1.5;
float windTime = uTime * windSpeed;
vec2 windSamplePos = (worldPos.xz * 0.05) - (mainWindDir * windTime * 0.2);
float windBase = fbm(windSamplePos * 0.8) * 0.4 + 0.2;
float gustNoise = fbm(windSamplePos * 0.4);
float gust = pow(gustNoise, 3.0) * 1.8;
@@ -35,4 +36,7 @@ transformed.z += curveAmount * curveDir.y * 0.5;
float swayAmount = (totalWind + spring) * uv.y * uv.y;
transformed.x += swayAmount * windDir.x;
transformed.z += swayAmount * windDir.y;
transformed.y -= abs(swayAmount) * 0.2;
transformed.y -= abs(swayAmount) * 0.2;
objectNormal = vec3(0.0, 1.0, 0.0);
vWorldPos = (modelMatrix * instanceMatrix * vec4(transformed, 1.0)).xyz;