Search Issue Tracker

Not Reproducible



Found in




Issue ID




[MacOS][Metal] "Instanced Indirect" has drastically worse performance than "Instanced" Rendering



Reproduction steps:

1. Create a New Project
2. Import "Vegetation Studio Pro" from the Asset Store
3. Install "Entities" and "Post-processing" Packages
4. Open the "Demo" scene
5. Open the Profiler, Enable "Deep Profile", "Profile Editor" and "Record"
6. Enter Play mode
7. Search for "Gfx.WaitForPresent" in the Hierarchy tab of the Profiler
8. Notice that its "self ms" is high (400-500+)

Expected Result: "Instanced Indirect" has similar performance to "Instanced"
Actual Result: "Instanced Indirect" has drastically worse performance than "Instanced"

Reproduced with: 2019.1.4f1, 2018.4.1f1, 2018.3.14f1
Did not reproduce on: 2019.3.0a4 (Big spike at first), 2019.2.0b4, 2017.4.28f1 (Needs PackMan)

"VegetationSystemPro" -> "Edit Biomes" -> "Select Vegetation Item" -> Change both grass sprites Render mode to "Instanced' and repeat steps, dramatically more performant

Reproduces only on a MacOs Metal Graphics API

  1. Resolution Note:

    On recent hardware, Instanced Indirect appears to be consistently faster than "Instanced". On 2022.1.0a13 and a 2019 MacBook Pro with a Radeon Pro 5500M, Instanced Indirect takes 12-13ms per frame, while Instanced takes 16-17ms. It is possible that other GPUs exhibit different performance characteristics, but there does not seem to be anything systematically wrong with Instanced Indirect for this project.

Comments (2)

  1. GoldFireStudios

    Aug 18, 2020 16:01

    I can confirm this is still an issue with Unity 2020 and Vegetation Studio Pro.

  2. dmenefee

    Jul 09, 2020 17:10

    Are there any plans to fix this issue any time soon? It severely impacts performance for Mac builds when using Vegetation Studio Pro, for example.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.