mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-11-03 16:39:01 -06:00 
			
		
		
		
	renderer_vulkan/wrapper: Add VK_EXT_extended_dynamic_state functions
This commit is contained in:
		@@ -88,6 +88,16 @@ void Load(VkDevice device, DeviceDispatch& dld) noexcept {
 | 
			
		||||
    X(vkCmdSetStencilWriteMask);
 | 
			
		||||
    X(vkCmdSetViewport);
 | 
			
		||||
    X(vkCmdWaitEvents);
 | 
			
		||||
    X(vkCmdBindVertexBuffers2EXT);
 | 
			
		||||
    X(vkCmdSetCullModeEXT);
 | 
			
		||||
    X(vkCmdSetDepthBoundsTestEnableEXT);
 | 
			
		||||
    X(vkCmdSetDepthCompareOpEXT);
 | 
			
		||||
    X(vkCmdSetDepthTestEnableEXT);
 | 
			
		||||
    X(vkCmdSetDepthWriteEnableEXT);
 | 
			
		||||
    X(vkCmdSetFrontFaceEXT);
 | 
			
		||||
    X(vkCmdSetPrimitiveTopologyEXT);
 | 
			
		||||
    X(vkCmdSetStencilOpEXT);
 | 
			
		||||
    X(vkCmdSetStencilTestEnableEXT);
 | 
			
		||||
    X(vkCreateBuffer);
 | 
			
		||||
    X(vkCreateBufferView);
 | 
			
		||||
    X(vkCreateCommandPool);
 | 
			
		||||
 
 | 
			
		||||
@@ -206,6 +206,16 @@ struct DeviceDispatch : public InstanceDispatch {
 | 
			
		||||
    PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
 | 
			
		||||
    PFN_vkCmdSetViewport vkCmdSetViewport;
 | 
			
		||||
    PFN_vkCmdWaitEvents vkCmdWaitEvents;
 | 
			
		||||
    PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT;
 | 
			
		||||
    PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT;
 | 
			
		||||
    PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT;
 | 
			
		||||
    PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT;
 | 
			
		||||
    PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT;
 | 
			
		||||
    PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT;
 | 
			
		||||
    PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT;
 | 
			
		||||
    PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT;
 | 
			
		||||
    PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT;
 | 
			
		||||
    PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT;
 | 
			
		||||
    PFN_vkCreateBuffer vkCreateBuffer;
 | 
			
		||||
    PFN_vkCreateBufferView vkCreateBufferView;
 | 
			
		||||
    PFN_vkCreateCommandPool vkCreateCommandPool;
 | 
			
		||||
@@ -968,6 +978,50 @@ public:
 | 
			
		||||
                             buffer_barriers.data(), image_barriers.size(), image_barriers.data());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void BindVertexBuffers2EXT(u32 first_binding, u32 binding_count, const VkBuffer* buffers,
 | 
			
		||||
                               const VkDeviceSize* offsets, const VkDeviceSize* sizes,
 | 
			
		||||
                               const VkDeviceSize* strides) const noexcept {
 | 
			
		||||
        dld->vkCmdBindVertexBuffers2EXT(handle, first_binding, binding_count, buffers, offsets,
 | 
			
		||||
                                        sizes, strides);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetCullModeEXT(VkCullModeFlags cull_mode) const noexcept {
 | 
			
		||||
        dld->vkCmdSetCullModeEXT(handle, cull_mode);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetDepthBoundsTestEnableEXT(bool enable) const noexcept {
 | 
			
		||||
        dld->vkCmdSetDepthBoundsTestEnableEXT(handle, enable ? VK_TRUE : VK_FALSE);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetDepthCompareOpEXT(VkCompareOp compare_op) const noexcept {
 | 
			
		||||
        dld->vkCmdSetDepthCompareOpEXT(handle, compare_op);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetDepthTestEnableEXT(bool enable) const noexcept {
 | 
			
		||||
        dld->vkCmdSetDepthTestEnableEXT(handle, enable ? VK_TRUE : VK_FALSE);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetDepthWriteEnableEXT(bool enable) const noexcept {
 | 
			
		||||
        dld->vkCmdSetDepthWriteEnableEXT(handle, enable ? VK_TRUE : VK_FALSE);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetFrontFaceEXT(VkFrontFace front_face) const noexcept {
 | 
			
		||||
        dld->vkCmdSetFrontFaceEXT(handle, front_face);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetPrimitiveTopologyEXT(VkPrimitiveTopology primitive_topology) const noexcept {
 | 
			
		||||
        dld->vkCmdSetPrimitiveTopologyEXT(handle, primitive_topology);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetStencilOpEXT(VkStencilFaceFlags face_mask, VkStencilOp fail_op, VkStencilOp pass_op,
 | 
			
		||||
                         VkStencilOp depth_fail_op, VkCompareOp compare_op) const noexcept {
 | 
			
		||||
        dld->vkCmdSetStencilOpEXT(handle, face_mask, fail_op, pass_op, depth_fail_op, compare_op);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetStencilTestEnableEXT(bool enable) const noexcept {
 | 
			
		||||
        dld->vkCmdSetStencilTestEnableEXT(handle, enable ? VK_TRUE : VK_FALSE);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void BindTransformFeedbackBuffersEXT(u32 first, u32 count, const VkBuffer* buffers,
 | 
			
		||||
                                         const VkDeviceSize* offsets,
 | 
			
		||||
                                         const VkDeviceSize* sizes) const noexcept {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user