Search Issue Tracker
By Design
Votes
2
Found in
2019.4
2020.2
2020.2.1f1
2021.1
2021.2
Issue ID
1311730
Regression
No
DrawMeshInstanced has no performance difference when drawing many objects when compared to rendering many GameObjects without it
Steps to reproduce:
1. Open the user's attached project "UnitDrawMeshInstanced.zip"
2. Build it for Android
3. Open the app
4. In the bottom right corner press the "Instancing" button
5. Notice the fps does not change in the top right corner
Expected results: FPS increase noticeably
Actual results: FPS does not change
Reproducible with: 2019.4.24f1, 2020.2.3f1, 2021.1.0b5, 2021.2.0a7
Reproducible devices:
, Xiaomi Redmi 4 (Redmi 4), Android 6.0.1, CPU: Snapdragon 430 MSM8937, GPU: Adreno (TM) 505
VLNQA00264, Samsung Galaxy S10+ (SM-G975F), Android 10, CPU: NOT FOUND, GPU: Mali-G76
VLNQA00279, Samsung Galaxy S10+ (SM-G975U), Android 9, CPU: Snapdragon 855 SM8150, GPU: Adreno (TM) 640
----------, Huawei Mate 40 Pro, Android 10, CPU: HiSilicon Kirin 9000, GPU: Mali-G78
----------, Huawei P40 Pro, Android 10, CPU: HiSilicon Kirin 990 5G, GPU: Mali-G76
Does not reproduce with: iPhone 12 Pro (iOS 14.2.1), iPhone 6S (iOS 13.3.1)
Note:
- Standalone and Editor has an around 2x performance
- User informed that he was able to achieve a performance boost on some devices
- Reproduces with Vulkan and OpenGles3
- Issue Reproduces with MacOS editor with Metal
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Articulation Body with 'Revolute' Joint Type has erratic behavior when Upper Limit is set to above 360
- WebGL Player fails to render Scene when Terrain with Detail Mesh is added and WebGPU Graphics API is used
- Inconsistent errors are logged when different types are passed into the Query "Q<>" method in UIToolkit and the ancestor VisualElement is null
- Crash on GetMaterialPropertyByIndex when opening a specific Scene
- Discrepancies in the styling are present when using a TSS file instead of a USS file in custom EditorWindow
Resolution Note (2021.2.X):
DrawMeshInstanced reduces the amount of work done by main thread so the rendering time is not affected if the scene is not CPU or GPU bound. I couldn't reproduce the 2x performance difference in the Editor or device. The only performance difference is the addition of objects sorting for rendering, this has a low impact on performance. The only way to 2x performance gain if rendering takes less than 16ms and the app starts rendering every Vsync instead of every second Vsync.