forked from MoonsideGames/Refresh
enable multiDrawIndirect feature, add indirect command struct
parent
329ffab6b8
commit
11d262dc11
|
@ -376,6 +376,14 @@ typedef struct Refresh_TextureSlice
|
|||
uint32_t level;
|
||||
} Refresh_TextureSlice;
|
||||
|
||||
typedef struct Refresh_IndirectDrawCommand
|
||||
{
|
||||
uint32_t vertexCount;
|
||||
uint32_t instanceCount;
|
||||
uint32_t firstVertex;
|
||||
uint32_t firstInstance;
|
||||
} Refresh_IndirectDrawCommand;
|
||||
|
||||
/* State structures */
|
||||
|
||||
typedef struct Refresh_SamplerStateCreateInfo
|
||||
|
@ -666,6 +674,7 @@ REFRESHAPI void Refresh_DrawPrimitives(
|
|||
);
|
||||
|
||||
/* Similar to Refresh_DrawPrimitives, but draw parameters are set from a buffer.
|
||||
* The buffer layout should match the layout of Refresh_IndirectDrawCommand.
|
||||
*
|
||||
* buffer: A buffer containing draw parameters.
|
||||
* offsetInBytes: The offset to start reading from the draw buffer.
|
||||
|
|
|
@ -10537,6 +10537,7 @@ static uint8_t VULKAN_INTERNAL_CreateLogicalDevice(
|
|||
SDL_zero(deviceFeatures);
|
||||
deviceFeatures.fillModeNonSolid = VK_TRUE;
|
||||
deviceFeatures.samplerAnisotropy = VK_TRUE;
|
||||
deviceFeatures.multiDrawIndirect = VK_TRUE;
|
||||
|
||||
/* creating the logical device */
|
||||
|
||||
|
|
Loading…
Reference in New Issue