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 which stages may be used as a logically next bound stage when drawing with the shader bound. A value of zero indicates this shader stage must be the last one. -
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. The implementation must not access these objects outside of the duration of the command this structure is passed to. -
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.