
Simple yet intricate, TTFE’s single-pivot system mimics multi-pivot foliage motion, inspired by Pivot Painter.Tested in Unity 2021.3.11f1+, 2022.3.1f1+, 2023.1.0f1+, 2023.2.14f1+, Unity 6 (6000.0.5f1), Unity 6 LTS ( 6000.0.23f1).(SRP 12+, 14+, 15+, 16+ and 17+) are supported.* Default pipeline in use: Built-in. For URP and HDRP conversion, please install the necessary packages from the "Pipelines" folder!Bring your game worlds to life with the Toby Foliage Engine (TTFE), 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 volumes for dynamic wind effects 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 - LightYou can purchase the art assets separately here: Vegetation Pack - Toby Foliage Engine Assets○ FeaturesTwo types of wind systems can be interchangeably used; "Gentle Breeze" and "Strong Wind". The global features such as wind and seasons can be adjusted using the "(TTFE) Global Controller".Automatic wind system and adjustable wind mask volumes (mask can be defined in the material settings).Trunk and branch bending system.Realistic wind behavior.Fast and performant, good optimization.Real-time season control Including random color and contrast.Self-shading (faux-mobile shading with additional vertex color features).Vertex ambient occlusion and self-occlusion.Accurate PBR shading.New and Innovative deferred translucency that gets automatically occluded in shadow by a feature called “Translucency Ao”. It works in built-in, URP, and HDRP (only additional to the diffusion profile in HDRP).Translucency Fluffiness (makes fuzzy-looking grass).Extra, Uber Cliff shader (tri-planar cliff shader with grass/snow coverage and correct edge slope angle, 3 layers).Amplify Shader functions.Seven example scenes.Original assets.Snow and winter control. (NEW)Additional Terrain shader that supports snow control. (Experimental NEW)All TTFE shaders now support the snow feature.○ Next Version Updates1.2.0 (Coming soon)Complete UI overhaul.Fixed Global Controller lag issues.Fixed season color bugs.Improved wind (Gentle phase).Additional options for wind and shading.Additional nature prefabs.Additional learning example scenes.Optional shaders and fixes for Built-in.Complete package overhaul and optimization.Player interaction.Rotation of wind direction using the controller gizmo.○ Future UpdatesWetnessImproved GPU Instancing and more.○ Compatibility✓ TTFE supports various third-party terrain and vegetation tools like Gaia and Nature Renderer. (Tested with Nature Renderer)○⚑ Limitations🞫 TTFE is designed to work with instancing, static batching is not supported.🞫 TTFE is slightly more expensive for mobile but can be optimized by removing features.🞫 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".⚑ Global Controller Notice! Global Controller setting latency due to the implemented method. Moving wind and season sliders will lag in larger scenes. This issue can be mitigated or avoided by using the shaders with the Unity terrain system.Will be fixed in the next update.⚑ Global Controller and Terrain Shader! TTFE is currently designed to work with foliage and mesh shaders. It also includes a terrain shader still in development, so the global controller doesn't support the snow feature on terrain yet but you can manually adjust the snow.Will be fully functional in the next update.⚑ Setting your prefabs to static will break the shader due to a lack of support for static batching. If you want to bake lighting, first bake and then uncheck "static" after you're finished.⚑ Subsurface Scattering bug in Built-in RP Deferred due to the "light direction node". Shader adjustments are advised if you experience light glitches in the scene. Alternatively, you can use forward translucency.Will be fixed in the next update.○⚑ Requirements⚑ When using prefabs as terrain trees and terrain details! For the global controller to work with the default Unity terrain or TTFE terrain, there must be at least one prefab mesh of each material in the scene so the terrain can instance it. If there is no object, the controller will not function.○ FeedbackFor questions follow the Unity forum thread or contact me via email:florianalexandru05@gmail.comSupport Forum ThreadOnline Documentation○ Polycount and texture specifications*(Triangles counting only LOD0) This list only presents a small example of a few meshes.Cliffs and rocks:CliffRockGCATA_A: 8609 triangles.CliffRockGCATA_B: 8480 triangles.CliffRockGCATA_C: 7424 triangles.CliffRockGCATA_D: 2840 triangles.CliffRockGCATA_E: 2072 triangles.CliffRockGCATA_F: 338 triangles.CliffRockGCATA_H: 228 triangles.CliffRockGCATA_H: 228 triangles.Props:IrregularStones: Under 600 triangles.Other Props: Under 1000 triangles.Vegetation:Various grasses: Under 2000 triangles (per clump).Various Bushes: Under 4000 to 700 triangles.Trees:*Notice! These assets are very dense and are considered mid(low poly) at lod0.JuniperGCATA_B: 39849 triangles.JuniperGCATA_F: 27521 triangles.JuniperGCATA_G: 24516 triangles.JuniperOldGCATA_A: 36523 triangles.JuniperOldGCATA_B: 29531 triangles.ShrubTrees: Under 13000 to 7000.Textures- Texture sizes: 4096 x 4096px (the majority of the texture atlases); 2048 x 2048px, 1024 x 1024px, 512 x 512px, 256 x 256px (tile textures, smaller texture atlases, particles, and splats).- Texture formats: "Tif" (if available), "Png" (all albedo, normal maps, height maps, and gloss/ao maps).Standard metalness shader workflow. Merged maps for the metalness/AO/Gloss.Metalness/ao/gloss" (MAG) are saved as transparent png textures.Other informationRigging: NoAnimation count: 0UV mapping: YesLOD information: 4 LODSTypes of materials and texture maps: PBR