Launching today

Three.js Grassworks
Production-ready procedural grass system for Three.js+WebGPU
1 follower
Production-ready procedural grass system for Three.js+WebGPU
1 follower
A complete grass system for Three.js and WebGPU, built to make dense, realistic, and performant grass easy to add to your 3D environments. Create expansive grass fields with dynamic wind, terrain interaction, multiple grass styles, and the tools to shape your world exactly the way you want.








Hey Everyone! I'm Muhammad Bilal Khan, the developer behind Three.js Grassworks.
Grass has always been one of those details that can completely change how a 3D environment feels. It makes a world feel alive, adds depth and scale, and can turn an empty landscape into something that actually feels like a place.
But while working with Three.js, I kept running into the same problem. Getting a small patch of grass to look good wasn't particularly difficult. Getting that same quality across a large environment, with thousands of blades moving and interacting in real time, while keeping performance under control, was a very different challenge.
I started building Grassworks to solve that problem for my own projects. Over time, what began as a rendering experiment grew into a complete system designed specifically for creating large, dense grass environments in Three.js and WebGPU.
Grassworks handles the parts that quickly become complicated at scale, including terrain-aware placement, dynamic wind, interaction, different grass styles, LOD, culling, Grass Maps, and terrain painting.
After a lot of iteration and rebuilding, v1.1.0 is now live.
I've also built a live demo so you can see the system running directly in the browser and explore what it can do.