Flora


 

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.

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.
    • Shader Graph Integration: Automatic Shader Graph patching with no modifications needed.
    • DOTS-Enabled Property System: Supports Shader Graph 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.


Note: This is for learning purpose only, commercial usage is not allowed, if you want to use commercial please buy asset from its owner or from asset store.




Post a Comment

0 Comments