I have used this in production products. It works really well for flat areas, for hilly areas I have an other method.
But this is the only way you are going to get that much grass to render without much impact.
It also has texture maps for growth height and color, so you can do “painted” areas on the grass for sports markings.
Also if you design really calls for that many independent blades of grass then its time to start thinking realistic. You will need to do a LOD system that only is really rendering a couple thousand blades then a couple hundred quads with some grass cut out and move that system with your camera. There is never really a reason to have to actually have 100000 blades of grass visible and calculated at once. You would bever see that many and as you zoom out they don’t have enough pixel space to even be readable so you use placeholders.
Grass, Shadows, Reflected Light, Mirrors, Water, Volumetrics are all super technical sub fields that all have their own performance concerns and design principles in order to use them efficiently. If they were “easy” then every game would have sprawling fields of uncountable blades of grass, but even AAA don’t so don’t expect webGL to be able to.