Quick answer: Unreal foliage instances visible but invisible to your gameplay traces? The foliage type’s collision presets don’t include the channel you’re tracing — configure presets per foliage type.

An AI line trace tries to detect dense trees but always reports clear. The trees’ foliage type uses BlockAllDynamic; AI traces use a custom channel that BlockAllDynamic doesn’t cover.

Foliage Type Collision

Open the Foliage Type asset → Collision section. Choose a Collision Preset that includes your gameplay trace channels.

Custom Trace Channels

Project Settings → Collision → New Trace Channel. Foliage types can opt into the new channel via custom collision presets.

Instanced Static Mesh Path

Foliage instances are HISMC (Hierarchical Instanced Static Mesh). Collision is per-instance but uses the foliage type’s preset. Per-instance overrides aren’t supported.

Bake to BSP for Cover

For gameplay-critical large foliage (boss arena trees), consider placing them as individual static meshes — more control but more memory than foliage instances.

Verifying

Gameplay traces hit foliage instances appropriately. Physics blocks against them work. Performance impact acceptable.

“Foliage collision lives on the type. Update presets to match gameplay channels.”

Audit your foliage types when adding new trace channels — the ‘invisible-to-trace’ problem is silent until QA reports it.