| 979 | } |
| 980 | |
| 981 | void CommandListWrapper::dispatchMeshIndirectCount(uint32_t paramOffsetBytes, uint32_t countOffsetBytes, uint32_t maxDrawCount) |
| 982 | { |
| 983 | if (!requireOpenState()) |
| 984 | return; |
| 985 | |
| 986 | if (!requireType(CommandQueue::Graphics, "dispatchMesh")) |
| 987 | return; |
| 988 | |
| 989 | if (!m_MeshletStateSet) |
| 990 | { |
| 991 | error("Meshlet state is not set before a dispatchMesh call.\n" |
| 992 | "Note that setting graphics or compute state invalidates the meshlet state."); |
| 993 | return; |
| 994 | } |
| 995 | |
| 996 | if (!validatePushConstants("meshlet", "setMeshletState")) |
| 997 | return; |
| 998 | |
| 999 | if (!m_CurrentMeshletState.indirectParams) |
| 1000 | { |
| 1001 | error("Indirect params buffer is not set before a dispatchMeshIndirectCount call."); |
| 1002 | return; |
| 1003 | } |
| 1004 | |
| 1005 | if (!m_CurrentMeshletState.indirectCountBuffer) |
| 1006 | { |
| 1007 | error("Indirect count buffer is not set before a dispatchMeshIndirectCount call."); |
| 1008 | return; |
| 1009 | } |
| 1010 | |
| 1011 | m_CommandList->dispatchMeshIndirectCount(paramOffsetBytes, countOffsetBytes, maxDrawCount); |
| 1012 | } |
| 1013 | |
| 1014 | void CommandListWrapper::beginTimerQuery(ITimerQuery* query) |
| 1015 | { |
nothing calls this directly
no outgoing calls
no test coverage detected