separate sampler layout

pull/8/head
cosmonaut 2020-12-16 12:28:45 -08:00
parent 9526a40420
commit 5961876847
1 changed files with 20 additions and 15 deletions

View File

@ -264,14 +264,6 @@ typedef enum REFRESH_ColorComponentFlagBits
typedef uint32_t REFRESH_ColorComponentFlags; typedef uint32_t REFRESH_ColorComponentFlags;
typedef enum REFRESH_ShaderParamType
{
REFRESH_SHADERPARAMTYPE_SAMPLER,
REFRESH_SHADERPARAMTYPE_SAMPLED_IMAGE,
REFRESH_SHADERPARAMTYPE_COMBINED_IMAGE_SAMPLER,
REFRESH_SHADERPARAMTYPE_UNIFORM
} REFRESH_ShaderParamType;
typedef enum REFRESH_ShaderStage typedef enum REFRESH_ShaderStage
{ {
REFRESH_SHADERSTAGE_VERTEX, REFRESH_SHADERSTAGE_VERTEX,
@ -362,10 +354,21 @@ typedef struct REFRESH_RenderTargetBlendState
REFRESH_ColorComponentFlags colorWriteMask; REFRESH_ColorComponentFlags colorWriteMask;
} REFRESH_RenderTargetBlendState; } REFRESH_RenderTargetBlendState;
typedef struct REFRESH_ShaderTextureSamplerLayoutBinding
{
uint32_t binding;
REFRESH_ShaderStage shaderStage;
} REFRESH_ShaderSampleLayoutBinding;
typedef struct REFRESH_ShaderTextureSamplerLayout
{
uint32_t bindingCount;
const REFRESH_ShaderSampleLayoutBinding *bindings;
} REFRESH_ShaderTextureSamplerLayout;
typedef struct REFRESH_ShaderParamLayoutBinding typedef struct REFRESH_ShaderParamLayoutBinding
{ {
uint32_t binding; uint32_t binding;
REFRESH_ShaderParamType shaderParamType;
REFRESH_ShaderStage shaderStage; REFRESH_ShaderStage shaderStage;
} REFRESH_ShaderParamLayoutBinding; } REFRESH_ShaderParamLayoutBinding;
@ -375,6 +378,14 @@ typedef struct REFRESH_ShaderParamLayout
const REFRESH_ShaderParamLayoutBinding *bindings; const REFRESH_ShaderParamLayoutBinding *bindings;
} REFRESH_ShaderParamLayout; } REFRESH_ShaderParamLayout;
typedef struct REFRESH_PipelineLayoutCreateInfo
{
uint32_t shaderParamsLayoutCount;
REFRESH_ShaderParamLayout *shaderParamLayouts;
uint32_t shaderTextureSamplerLayoutCount;
const REFRESH_ShaderTextureSamplerLayout *shaderTextureSamplerLayouts;
} REFRESH_PipelineLayoutCreateInfo;
typedef struct REFRESH_RenderTargetDescription typedef struct REFRESH_RenderTargetDescription
{ {
REFRESH_SurfaceFormat format; REFRESH_SurfaceFormat format;
@ -391,12 +402,6 @@ typedef struct REFRESH_RenderPassCreateInfo
const REFRESH_RenderTargetDescription *renderTargetDescriptions; const REFRESH_RenderTargetDescription *renderTargetDescriptions;
} REFRESH_RenderPassCreateInfo; } REFRESH_RenderPassCreateInfo;
typedef struct REFRESH_PipelineLayoutCreateInfo
{
uint32_t shaderParamsLayoutCount;
REFRESH_ShaderParamLayout *shaderParamLayouts;
} REFRESH_PipelineLayoutCreateInfo;
/* Pipeline state structures */ /* Pipeline state structures */
typedef struct REFRESH_TopologyState typedef struct REFRESH_TopologyState