C Specification
The VkShaderCreateInfoEXT
structure is defined as:
// Provided by VK_EXT_shader_object
typedef struct VkShaderCreateInfoEXT {
VkStructureType sType;
const void* pNext;
VkShaderCreateFlagsEXT flags;
VkShaderStageFlagBits stage;
VkShaderStageFlags nextStage;
VkShaderCodeTypeEXT codeType;
size_t codeSize;
const void* pCode;
const char* pName;
uint32_t setLayoutCount;
const VkDescriptorSetLayout* pSetLayouts;
uint32_t pushConstantRangeCount;
const VkPushConstantRange* pPushConstantRanges;
const VkSpecializationInfo* pSpecializationInfo;
} VkShaderCreateInfoEXT;
Members
-
sType
is a VkStructureType value identifying this structure. -
pNext
isNULL
or a pointer to a structure extending this structure. -
flags
is a bitmask of VkShaderCreateFlagBitsEXT describing additional parameters of the shader. -
stage
is a VkShaderStageFlagBits value specifying a single shader stage. -
nextStage
is a bitmask of VkShaderStageFlagBits specifying zero or stages which may be used as a logically next bound stage when drawing with the shader bound. -
codeType
is a VkShaderCodeTypeEXT value specifying the type of the shader code pointed to bepCode
. -
codeSize
is the size in bytes of the shader code pointed to bepCode
. -
pCode
is a pointer to the shader code to use to create the shader. -
pName
is a pointer to a null-terminated UTF-8 string specifying the entry point name of the shader for this stage. -
setLayoutCount
is the number of descriptor set layouts pointed to bypSetLayouts
. -
pSetLayouts
is a pointer to an array of VkDescriptorSetLayout objects used by the shader stage. -
pushConstantRangeCount
is the number of push constant ranges pointed to bypPushConstantRanges
. -
pPushConstantRanges
is a pointer to an array of VkPushConstantRange structures used by the shader stage. -
pSpecializationInfo
is a pointer to a VkSpecializationInfo structure, as described in Specialization Constants, orNULL
.
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.