Search Issue Tracker

Feature Request

Votes

62

Found in

2021.3.47f1

2022.3.55f1

6000.0.32f1

6000.1.0a9

6000.2.0a1

6000.3.0a1

Issue ID

UUM-91617

Regression

No

Graphics.RenderMeshIndirect does not issue multi-draw rendering commands when using a graphics API capable of multi-draw commands

-

How to reproduce:
1. Open the attached "IN-87308" project
2. Open the "SampleScene" and enter Play mode
3. Navigate to “Window > Analysis > Frame Debugger” and open the Frame Debugger window
4. Enable the Frame Debugger from the window
5. Navigate to “Camera.Render > Drawing > Render.OpaqueGeometry > RenderForwardOpaque.Render > RenderForward.RenderLoopJob” and expand it to reveal the “Draw Mesh” calls
6. Observe the amount of “Draw Mesh” calls inside the Frame Debugger

Expected result: Frame Debugger outputs one “Draw Mesh” call that combines all four of the vkCmdDrawIndexedIndirect calls
Actual result: Frame Debugger outputs four “Draw Mesh” calls

Reproducible in: 2021.3.47f1, 2022.3.55f1, 6000.0.32f1, 6000.1.0a9

Reproducible on: Windows 11
Not reproducible on: No other environments tested

Notes:

* Also reproducible in Player (while using a graphics debugger)
* Reproducible using both Vulkan and DirectX12

  1. Resolution Note:

    Multi Draw Indirect (MDI) is currently not supported. We fixed the documentation error to reflect this. The current recommendation is to simply submit multiple indirect draw commands instead.

    We are evaluating the feature request for MDI support. It is important to note that unless trying to batch a large number of draws, we would not expect any tangible performance gain with MDI.

    When rendering many instances, the currently recommended approach is using the Batch Renderder Group API instead: https://docs.unity3d.com/6000.1/Documentation/ScriptReference/Rendering.BatchRendererGroup.

Comments (14)

  1. FromNorthProjekt

    May 07, 2025 15:27

    Please fix this or at least say is it intentional or a bug, we have a rendering system that entirely built around the idea of multi indirect drawing, we need this to get fixed!

  2. OldanyGames

    May 07, 2025 15:16

    Why this is not fixed yet ????????????????????? it is a must feature

  3. MrDaveSh

    Jan 30, 2025 15:14

    i agree with previous comment, i did work for ages to implement RenderMeshIndirect, just to realize that it was not working as documented. This is really a huge missing features of the engines.

  4. Manuel_H

    Jan 28, 2025 11:05

    This is not a satisfying resolution. MDI is a critical feature and there is no alternative for it. Can you please at least clarify if this is indeed a BUG or a missing feature? Because according to the docs of every unity release with the RenderMeshIndirect-API (https://docs.unity3d.com/6000.1/Documentation/ScriptReference/Graphics.RenderMeshIndirect.html) it should be implemented and working!

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.