Bring your game worlds to life with the Toby Foliage Engine (TTFE) 2.0, a streamlined shader solution for stunning, wind-swept foliage. The Toby Foliage Engine (TTFE) delivers optimized, realistic wind and plant shading with a user-friendly interface. These Amplify Shader Editor-crafted shaders integrate seamlessly with PBR shading, using mesh-based vertex position volumes for dynamic wind effects that are fully customizable via material settings. Perfect for game foliage, TTFE balances performance and quality. There is no need for complex conversion steps, as the shaders streamline the process.
Try out the light version for free: Toby Foliage Engine - Light
You can purchase the art assets separately here: Vegetation Pack - Toby Foliage Engine Assets
Compatibility:
TTFE supports various third-party terrain and vegetation tools like Gaia and Nature Renderer. (Tested with Nature Renderer)
Features:
User Interface and Control:
- Revamped User Interface: A complete UI overhaul for intuitive navigation and control.
- Global Controller (TTFE): Seamlessly adjust global environmental settings, including wind, seasons, and other dynamic parameters.
- Wind Direction Control: Rotate wind direction effortlessly using an intuitive controller gizmo.
Wind Systems:
- Dual Wind Systems: Choose between "Gentle Breeze" and "Strong Wind" modes, interchangeable in real time.
- Automatic Wind System: Features adjustable wind mask volumes defined via material settings for precise control.
- Realistic Wind Behavior: Enhanced trunk and branch bending system for lifelike motion.
- Dynamic Wind Interaction: Supports player and physics-based interactions with plants, including cloth physics for natural movement.
- Cloth: Additional wind options for cloth simulation.
Shading and Rendering:
- High-Performance Shaders: Optimized for all platforms, including mobile, with fast and efficient rendering.
- Accurate PBR Shading: Delivers realistic material rendering across Built-in, URP, and HDRP pipelines.
- Innovative Deferred Translucency: Features "Translucency AO" for automatic occlusion in shadows, compatible with HDRP diffusion profiles.
- Translucency Fluffiness: Creates a fuzzy, natural appearance for grass and foliage.
- Self-Shading and Occlusion: Includes faux-mobile shading with vertex color features, vertex ambient occlusion, and self-occlusion for enhanced depth.
- Terrain Shader: Full integration with terrain systems, supporting snow and seasonal effects.
- Perspective Correction: Adjusts grass angles for optimal viewing from top-down perspectives.
- Full Specular Control: Adjust and customize specular parameters in all pipelines.
- Custom Normals: A secondary normal map set for custom normals.
- Emission: Supports emissive materials on fluorescent plants for a striking effect.
Additional Features:
- Full Mesh Shader Integration: Seamlessly integrates with the TTFE controller for consistent behavior across assets.
- Nature Prefabs: Expanded library of grass, plants, and other environmental assets.
- Nine Example Scenes: Showcase features and provide learning resources for implementation.
- Appendices System: Enables attachment of hanging objects to main bodies or pivots for dynamic effects.
- Material Matcher: A utility for aligning material properties across assets.
- Terrain Plants to Prefab Converter: A non-destructive converter tool that transforms terrain plants into prefabs.
Optimization and Compatibility:
- Complete Package Optimization: Streamlined for performance across all supported platforms.
- Modern Shader Integration: Utilizes global variables for fast and flexible shader management.
- Full Compatibility: Supports Built-in, URP, and HDRP pipelines, with optional fixes for Built-in rendering.
Limitations:
- TTFE is designed to work with instancing; static batching is not supported.
- While Unity's built-in instancing is supported, using a third-party instancing solution is recommended for optimal performance, as the default option may not yield significant performance improvements.
- TTFE is slightly more expensive for mobile, but it can be optimized by removing features or using the mobile version of the shaders.
- Shader Model 4.5+ capable devices are required (Desktop / High-End Mobile).
- While Mobile is supported, the scenes are intended for performance testing and will not be suitable for mobile devices (performance-intensive scenes).
- Only the latest Unity (LTS) versions are officially supported.
- Due to the employed method, visible stretching may occur in the trunk and branches. Adjust the material settings until the desired outcome is achieved.
- The TTFE feature is functional without the implementation of vertex colors. However, green vertex color is necessary for the "flutter feature" to work on leaves. Grass does not require any vertex colors.
- TTFE is not a perfect alternative and may not produce results identical to those of Pivot Painter. The wind only relies on a single point of rotation!!
- Performance Intensive Scenes! The demo scenes were created to test the performance of the TTFE shaders, which can be compared with other shaders or used for testing. For lower-end devices, you can set the "LOD bias to 1" in your "Preferences -> Quality settings".
- Subsurface Scattering bug in Built-in RP Deferred due to the "light direction node". Use the mobile version of the shaders if you encounter lighting glitches.
- Player Interaction Limitations:
- Shader interaction with touch bedding animation. Works with any prefab as well as with terrain plants. It can be switched between multiple players.
- Limitations: Supports only one interactor at a time.
- Physics Interaction (Pivot bending): Works with an unlimited number of interactors at the same time.
- Limitations: Doesn't work on terrain objects, as the terrain has its own collision system that is different from the default mesh. Use the "Terrain Plants to Prefab Converter" script as a workaround.
- Terrain Requirement: To ensure compatibility with the Global Controller (TTFE) when using prefabs as terrain trees or details on either Unity's default terrain or TTFE terrain, at least one instance of each prefab mesh with its associated material must be present in the scene. Without an instance of each material, the Global Controller will not function correctly.
2026-03-18 00:00:00-update version:The Toby Foliage Engine v2.0.0