Tasty Grass Shader is the ultimate procedural framework for grass, vegetation and debris. Leveraging modern graphics techniques like Compute Shaders and Indirect Draw, it doesn’t use grass prefabs and is very efficient at rendering hundreds of thousands of blades!
SUPPORT & CONTACT
If you encounter any issues or have questions, we are happy to help via:
FEATURES
🌱 Powerful procedural generation
- Scriptable Object-based settings system
- Use any grayscale texture to control the distribution of parameters, such as: height, angle, bending, thickness, and color of grass blades
- Up to four customizable layers of variation
- Several ready-to-use noise textures included.
⚡ Fast and beautiful
- Separated baking and rendering pass at load time for maximum runtime performance.
- Renders hundreds of thousands of blades often under one millisecond on a modern mid-range GPU.
- Control density over distance via template settings and graphics quality settings.
- Support for Multi-Sampling Anti-Aliasing (MSAA) and Alpha-To-Coverage in URP Forward.
- See our Benchmarks here
🌬️ Wind and collision system
- Simple and effective procedural wind.
- Tweakable wind speed, strength and patterns.
- Use sphere colliders to make objects interact with the grass.
🌿 Flexible
- Use custom textures for grass blades.
- Create your own plants and flowers.
- Also usable for ground debris, like fallen leaves and pebbles.
- Slope cutoff control.
🛫 Easy to get started
- 14 presets for grass, flowers and debris included
- Several grass textures included
- 4 wind presets included
⛰️ Support for Unity Terrain
- Grass can be assigned to entire terrain, a single Texture Layer or painted.
- Built-in chunk system for optimal runtime performance on large terrains.
🎲 Support for any Unity Mesh
- Height controllable via vertex color.
- Vertex colors from meshes supported.
- Vertex colors from Polybrush supported.
🕶️ Supports 3D (Forward and Deferred) and VR (Single-Pass Instanced and Multipass)
🧑💻 Hack-friendly
- Support for custom rendering materials.
- Via Amplify Shader Editor.
- Via Shader-Code.
- API for loadscreens.
- Independent use from Unity components supported.
- Endpoints for custom terrain solutions included.
- Internal API fully exposed.
REQUIREMENTS
- Support for Shader-Compile Target 4.5, respectively:
- DirectX 11 feature level 11+
- OpenGL 4.3+
- OpenGL ES 3.1+
- Vulkan
- Metal
- (Incompatible with WebGL)
- Unity 2021.3+
- Universal Rendering Pipeline 12.1+ or High Definition Render Pipeline 12.1+
- Burst 1.6+ Package (included with Unity)
KNOWN ISSUES
- There is no compatibility with lightmaps yet.
- Compatibility with Unity 6 still being evaluated. Tested with 6000.0.22f1, known issues:
- (UI) Grass Painting Tool for the Unity Terrain has slightly overlapping text
- HDRP Support is currently in Beta. Known issues:
- Motion Vectors don’t account for movement by wind.
- VR compatibility with HDRP has not been tested yet.
FURTHER NOTES
The skybox used for the screenshots is not included in the package and is sourced from AllSky – 220+ Sky / Skybox Set.