Files

95 lines
2.0 KiB
C

#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<VulkanRenderOutput_t> 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