Complete foliage instancing and scattering solution: terrain foliage support, GPU occlusion, painting and scattering tools, instancing groups, prefab support, and unparalleled performance.
For more detail this asset from the Unity Asset Store: Click Here
This is a paid asset, but now you can download the “Flora” for FREE. Please keep in mind that this package is provided only for learning purposes or to test before buying the product, NOT FOR COMMERCIAL PURPOSES.
Flora 2.0 v2.0.13
“If possible, please buy the package to support the developer”
Description
Complete Instancing and Placement Solution
Flora is a robust and efficient instancing rendering system designed for Unity 2021.3 and later, enabling you to enhance environments with vast amounts of vegetation and instances without compromising performance.
Documentation
Discord
Support Forum
Roadmap
Key Features
Terrain Support: Fully supports instancing terrain details and trees, ensuring smooth integration and batching with other instances. Background loading of terrain foliage using Burst jobs eliminates performance hitches.
Instance Painting: Easily paint instances on any mesh surface. Instances are grouped by a global grid and added as children of the surface, allowing for easy management. Populate your scenes with detailed vegetation and objects effortlessly.
Prefab Support: Manage and customize foliage-covered prefabs with ease. Create complex prefabs, such as overgrown buildings or detailed vegetation patches, to introduce variation into any scene.
Performance: Flora 2.0 is rebuilt with performance as the top priority. Features include zero frame GCAllocs, Burst optimized jobs for uploading and culling, a modern GPU resident scene, dual-phase culling, and on-demand GPU streaming to maintain high performance and low GPU memory usage in complex scenes.
Rendering and Performance
Pipeline Compatibility: Works with any render pipeline, including Built-in or custom.
Modern Indirect Rendering: Utilizes DX11, DX12, Vulkan, Metal, and modern console APIs.
Advanced GPU Scene Management: Employs a single buffer system, burst-mapped uploads, SOA layout, dynamically resizing buffers, and packed GPU transforms.
Full Terrain Support: Dynamically loads terrain detail and tree cells in the background using jobs.
Dual-Phase Culling: Combines Burst Jobs with GPU culling to reduce GPU load.
GPU Occlusion Culling: Implements an extremely performant Hi-Z occlusion system.
CPU Occlusion Culling: Supports Unity’s baked occlusion system for lower-end platforms.
Dynamic Density: Adjust instance density dynamically based on distance with a customizable falloff.
Global Density: Adjust instance density for the entire scene with a single slider.
GPU Streaming: Dynamically streams instances to optimize GPU memory usage.
LOD Cross-Fade: Supports both animated and transition-based LODGroups with cross-fade. Materials dynamically switch between cross-fade and opaque variations.
Optimized Batching: Instances are batched by material, regardless of placement.
Shadow Optimization: Share shadow materials via mesh or global material, with customizable LOD bias and clamping.
Light Probe Support: Updates interpolated light probes per instance based on ambient lighting changes.
Advanced Culling: Implements true shadow silhouette and frustum culling to avoid rendering off-screen objects.
Instance Context and Tools
Easy Access: Toggle with Tab or scene view context.
Built-in Tools: Use standard tools (move, rotate, scale) on any instance or selection.
Painting Tools: Use brushes for placing, painting, erasing, filling, and scaling instances.
Placement Settings: Customize density, radius, scale/rotation randomization, and slope/height masks.
Intuitive UI: Modern overlay interface for seamless environment work.
Custom Shortcut Context: Ensures no conflicting shortcut keys.
Integration and Tools
Prefab Support: Paint and edit instances within your prefabs. Create an overgrown house prefab, and drop it in a scene.
Selection Support: Allows instance selection directly from the scene hierarchy.
Prefab Conversion: Convert prefabs to instances in the scene with two clicks.
ShaderGraph Integration: Automatic ShaderGraph patching with no modifications needed.
DOTS-Enabled Property System: Supports ShaderGraph hybrid properties, with property painting via the property painter tool or scripts.
Rendering Debugger: Full integration with SRP’s rendering debugger. Debug scenes both in the editor and at runtime to see exactly what’s happening in the renderer.
Management
Runtime Access: Add, remove, and query instances efficiently at runtime.
Prefab Proxies: Maintain prefab instances with colliders and scripts while still rendering with Flora.
Enableable Instances: Enable or disable any instance.
Spatial Hashing: Utilizes a global hierarchical grid system for efficient instance management.
Requirements
Unity 2022.3
Unity 6.0
Platform Compute Shader Support