Blade colour at the root (from baseColor).
Blade height in metres.
Blade base width in metres.
Per-blade brightness variation, 0..1.
Natural droop, 0..1.
1 tints grass by LOD, 0 = normal shading.
Global multiplier on interactor push.
Number of active entries in interactors.
xyz = world position, w = radius (0 = unused slot).
The four LOD density fractions (x, y, z, w = LOD 0..3).
The four LOD distances (x, y, z, w = LOD 0..3).
Grass map texture (R = coverage, G = height); a neutral 1×1 texture when there is none.
minX, minZ, sizeX, sizeZ of the grass map in world space.
Radius with grass; blades fade over its last 15%.
Field-scale light/dark and dry patches, 0..1.
Resistance to wind and interaction (never below 0.05).
Sun colour × intensity.
Direction towards the sun. Drives back-lit translucency.
Blade colour at the tip (from tipColor).
Back-lit glow strength.
Position LOD/fades are measured from. Set from the Grass camera on the CPU so shadow passes (which render from the light) see exactly the same blades as the main view.
Normalised XZ wind direction.
Gust noise frequency (1/metres).
Gust travel speed.
How far blades bend in the wind.
Creates the uniform set shared by a Grass field's materials. Grass calls this for you and drives the values from
Grass.set(); it is exported so the GrassUniforms type is documented in full.