'Growing Grass' Material

Hi all, first time posting asking for help on the Unreal Forums so please let me know if I get anything wrong.

I’m trying to build a material that will give the effect of ‘growing grass’ Based on the objects position on world. (i.e short grass towards the bottom of the world, tall grass near the top).
My first method was to create a panning alpha texture that reveals the grass based on object location. The problem with this is I end up with a load of over-lapping alpha textures which I’m sure can’t be good for performance.

Now im looking into trying to use the Vertex world space normals to drive the ‘World Position Offset’ in the blue channel to make the material ‘grow’ in the z-axis.
I can’t seem to understand why this is causing the object to ‘grow’ at an angle and not straight in the Z-axis. Maybe someone could help me out?

Thanks for your time.

World Position Offset input needs to be float3 (or a vector).
Delete your Mask and replace OffsetAmount with a float3(0;0;100)