Check out this neat procedural rendering video which shows how grass is rendered in Outerra, which is a 3D planetary engine for seamless planet rendering from space down to the surface. It’s mainly used for unlimited visibility, progressive download of data and procedural content generation.
“Procedural grass in Outerra is rendered in two stages. The first stage generates just a grass canopy, a height mask that produces the overall shape that the grass forms on the terrain. It generates dry grass-less areas as well as grass of varying height using fractal patterns. Output of this stage is also directly used when rendering the terrain in the distance; what you see out there is not the ground level but a procedurally textured envelope of low vegetation. This also means that objects that are hidden in the 3D grass will be hidden under the distant canopy as well,” read the blog post.
“The second stage generates grass blades dynamically using the canopy data: terrain elevation, grass height and color. Canopy data have resolution roughly 30cm, and the amount of grass blades varies depending on the level of detail, that in turn depends on the distance from the camera.”
Tell us what you think in the comments section below.