#ifndef VULKAN_COMMANDS_H #define VULKAN_COMMANDS_H #include "tier1/utlvector.h" #include "vulkan_state.h" BEGIN_VULKAN_COMMAND(Empty) END_VULKAN_COMMAND(Empty) BEGIN_VULKAN_COMMAND(Blit) VkFrameObject_t stInputImage; VkFrameObject_t stOutputImage; int32_t iSrcMin[3] = {}; int32_t iSrcMax[3] = {}; int32_t iDstMin[3] = {}; int32_t iDstMax[3] = {}; END_VULKAN_COMMAND(Blit) BEGIN_VULKAN_COMMAND(ClearColor) float r; float g; float b; float a; IImage *pImage = NULL; IImage **ppSwapchainImages = NULL; END_VULKAN_COMMAND(ClearColor) BEGIN_VULKAN_COMMAND(Begin) CUtlVector images; VulkanRenderOutput_t stDepthImage = {}; bool bDepthEnabled = {}; uint32_t nResolutionX = 0; uint32_t nResolutionY = 0; END_VULKAN_COMMAND(Begin) BEGIN_VULKAN_COMMAND(End) END_VULKAN_COMMAND(End) BEGIN_VULKAN_COMMAND(SetVertexBuffer) uint32_t uBinding; IVertexBuffer *pBuffer; END_VULKAN_COMMAND(SetVertexBuffer) BEGIN_VULKAN_COMMAND(SetShader) IShader *pShader; END_VULKAN_COMMAND(SetShader) BEGIN_VULKAN_COMMAND(SetShaderData) IMaterial *pShaderData; END_VULKAN_COMMAND(SetShaderData) BEGIN_VULKAN_COMMAND(DrawPrimitives) uint32_t nVertexCount; uint32_t nFirstVertex; uint32_t nInstanceCount; uint32_t nFirstInstance; END_VULKAN_COMMAND(DrawPrimitives) BEGIN_VULKAN_COMMAND(SetScissors) int32_t iX = 0; int32_t iY = 0; uint32_t uWidth = 0; uint32_t uHeight = 0; END_VULKAN_COMMAND(SetScissors) BEGIN_VULKAN_COMMAND(SetViewport) float fX = 0; float fY = 0; float fWidth = 0; float fHeight = 0; float fDepthMin = 0; float fDepthMax = 1; END_VULKAN_COMMAND(SetViewport) BEGIN_VULKAN_COMMAND(ResolveImage) VkFrameObject_t stInputImage; VkFrameObject_t stOutputImage; END_VULKAN_COMMAND(ResolveImage) BEGIN_VULKAN_COMMAND(CopyBufferToImage) IBuffer *pBuffer; VkFrameObject_t stOutputImage; int iOffsetX = 0; int iOffsetY = 0; int iOffsetZ = 0; uint32_t iImageX = 1; uint32_t iImageY = 1; uint32_t iImageZ = 1; END_VULKAN_COMMAND(CopyBufferToImage) #endif