Optimization & Performance

The Nanite Foliage – High-Performance Realistic Grass pack is built with performance and scalability in mind. Whether you're targeting cinematic visuals or a 60+ FPS open-world game, this guide will help you optimize grass rendering without compromising quality.

πŸš€ Core Optimization Features

  • 100% Nanite-enabled meshes – no LODs required

  • Lightweight material instances with tons of shading customizations

  • LargeWorld System for advanced distance optimization

  • Low overdraw, high-density performance tuning

🎯 When to Use LargeWorld System

The LargeWorld System is not always necessary β€” it's designed for very large environments where traditional foliage setups would result in GPU bottlenecks or excessive overdraw.

Use Case
LargeWorld System?

Small levels or linear scenes

❌ Not recommended

Medium-sized outdoor maps

⚠️ Optional

Massive open-world terrain

βœ… Strongly recommended

Procedural landscapes or streaming worlds

βœ… Ideal

Consoles or lower-end hardware

βœ… Helps performance


πŸ’‘ Performance Tips

βœ… General Foliage Optimization

  • Use Nanite for all meshes Avoid traditional LODs and let Nanite handle geometry complexity.

  • Minimize Overdraw Dense overlapping blades can kill GPU performance - use wider blades or fewer instances at distance (e.g. via LargeWorld).

  • Disable Shadow Casting on distant grass In the Foliage Tool or Grass Varieties, disable:

    • Cast Dynamic Shadow

    • Cast Static Shadow

    • Cast Contact Shadow

  • Cull Smartly Even with Nanite, culling helps. Set Cull Distance Max appropriately based on your camera height and landscape scale.

πŸ“Š Test, Profile, Repeat

Always test your scene in realistic scenarios:

  • Use Unreal Insights or GPU Profiler to monitor overdraw and instance cost.

  • Test with cinematic cameras, top-down views, and fast movement (to simulate gameplay stress).

  • Use stat Foliage and stat GPU to check foliage draw calls and GPU timings.

Last updated