Website powered by

Unreal Engine Tutorial - Grass Landscape Projection

Here's a quick tutorial on how to use a virtual texture to project instanciated grass onto your landscape and have great contact point with the ground, per individual grass blade, and make the grass remain straight.

It basically uses pivots baked into UVs to sample the landscape height in world space at each grass blade's location and move vertices vertically according to the delta between the landscape and the grass pivot.

Quick demo.

Grass meshes here have randomized yaw but all lay flat. Each grass blade is then individually vertically shifted based on the delta between its position and the landscape's altitude beneath it. They all remain straight and have proper ground contact.

Grass meshes here have randomized yaw but all lay flat. Each grass blade is then individually vertically shifted based on the delta between its position and the landscape's altitude beneath it. They all remain straight and have proper ground contact.