Search Issue Tracker

By Design

Votes

0

Found in

2021.3.26f1

2022.2.21f1

2023.1.0b17

2023.2.0a16

Issue ID

UUM-36752

Regression

No

Indirect Argument "StartInstance" is ignored on DirectX when using "RenderMeshIndirect"

-

Reproduction steps:
1. Open the attached “Test Project” project
2. Open the “Test” Scene
3. Select “Main Camera” GO in the Hierarchy window
4. Increase / Decrease the “Start Instance” value under the “Test (Script)” Component
5. Observe the Game View
6. Open the Edit > Project Settings > Player window
7. Drag “Direct3D11” to the top of the “Graphics APIs for Windows” list under “Other Settings”
8. Repeat steps 3-5

Expected result: The cubes on the screen move the same way as with the “Vulkan” Graphics API
Actual result: The cubes do not change position

Reproducible with: 2021.3.26f1, 2022.2.21f1, 2023.1.0b17, 2023.2.0a16
Couldn’t test with: 2020.3.48f1 - No support for “IndirectDrawIndexedArgs”

Reproducible on: Windows 10

Note:
- Reproducible with both DX11 and DX12

  1. Resolution Note:

    'Start Instance' parameter (or it's analogue) for offsetting SV_InstanceID is not supported by DirectX API: https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ns-d3d12-d3d12_draw_indexed_arguments

    Vulkan is the only desktop graphics API that supports this functionality: https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkDrawIndexedIndirectCommand.html

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.