1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-03-15 07:29:17 +01:00

[dxvk] Add definitions for transform feedback entry points

This commit is contained in:
Philip Rebohle 2018-07-24 15:04:50 +02:00
parent bf906aa226
commit 61d56a1732
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
2 changed files with 72 additions and 0 deletions

View File

@ -221,6 +221,16 @@ namespace dxvk {
} }
void cmdBeginQueryIndexed(
VkQueryPool queryPool,
uint32_t query,
VkQueryControlFlags flags,
uint32_t index) {
m_vkd->vkCmdBeginQueryIndexedEXT(
m_execBuffer, queryPool, query, flags, index);
}
void cmdBeginRenderPass( void cmdBeginRenderPass(
const VkRenderPassBeginInfo* pRenderPassBegin, const VkRenderPassBeginInfo* pRenderPassBegin,
VkSubpassContents contents) { VkSubpassContents contents) {
@ -229,6 +239,16 @@ namespace dxvk {
} }
void cmdBeginTransformFeedback(
uint32_t firstBuffer,
uint32_t bufferCount,
const VkBuffer* counterBuffers,
const VkDeviceSize* counterOffsets) {
m_vkd->vkCmdBeginTransformFeedbackEXT(m_execBuffer,
firstBuffer, bufferCount, counterBuffers, counterOffsets);
}
void cmdBindDescriptorSet( void cmdBindDescriptorSet(
VkPipelineBindPoint pipeline, VkPipelineBindPoint pipeline,
VkPipelineLayout pipelineLayout, VkPipelineLayout pipelineLayout,
@ -258,6 +278,17 @@ namespace dxvk {
} }
void cmdBindTransformFeedbackBuffers(
uint32_t firstBinding,
uint32_t bindingCount,
const VkBuffer* pBuffers,
const VkDeviceSize* pOffsets,
const VkDeviceSize* pSizes) {
m_vkd->vkCmdBindTransformFeedbackBuffersEXT(m_execBuffer,
firstBinding, bindingCount, pBuffers, pOffsets, pSizes);
}
void cmdBindVertexBuffers( void cmdBindVertexBuffers(
uint32_t firstBinding, uint32_t firstBinding,
uint32_t bindingCount, uint32_t bindingCount,
@ -427,6 +458,19 @@ namespace dxvk {
} }
void cmdDrawIndirectVertexCount(
uint32_t instanceCount,
uint32_t firstInstance,
VkBuffer counterBuffer,
VkDeviceSize counterBufferOffset,
uint32_t counterOffset,
uint32_t vertexStride) {
m_vkd->vkCmdDrawIndirectByteCountEXT(m_execBuffer,
instanceCount, firstInstance, counterBuffer,
counterBufferOffset, counterOffset, vertexStride);
}
void cmdEndQuery( void cmdEndQuery(
VkQueryPool queryPool, VkQueryPool queryPool,
uint32_t query) { uint32_t query) {
@ -434,11 +478,30 @@ namespace dxvk {
} }
void cmdEndQueryIndexed(
VkQueryPool queryPool,
uint32_t query,
uint32_t index) {
m_vkd->vkCmdEndQueryIndexedEXT(
m_execBuffer, queryPool, query, index);
}
void cmdEndRenderPass() { void cmdEndRenderPass() {
m_vkd->vkCmdEndRenderPass(m_execBuffer); m_vkd->vkCmdEndRenderPass(m_execBuffer);
} }
void cmdEndTransformFeedback(
uint32_t firstBuffer,
uint32_t bufferCount,
const VkBuffer* counterBuffers,
const VkDeviceSize* counterOffsets) {
m_vkd->vkCmdEndTransformFeedbackEXT(m_execBuffer,
firstBuffer, bufferCount, counterBuffers, counterOffsets);
}
void cmdFillBuffer( void cmdFillBuffer(
VkBuffer dstBuffer, VkBuffer dstBuffer,
VkDeviceSize dstOffset, VkDeviceSize dstOffset,

View File

@ -284,6 +284,15 @@ namespace dxvk::vk {
VULKAN_FN(vkGetBufferMemoryRequirements2KHR); VULKAN_FN(vkGetBufferMemoryRequirements2KHR);
VULKAN_FN(vkGetImageMemoryRequirements2KHR); VULKAN_FN(vkGetImageMemoryRequirements2KHR);
#endif #endif
#ifdef VK_EXT_transform_feedback
VULKAN_FN(vkCmdBindTransformFeedbackBuffersEXT);
VULKAN_FN(vkCmdBeginTransformFeedbackEXT);
VULKAN_FN(vkCmdEndTransformFeedbackEXT);
VULKAN_FN(vkCmdDrawIndirectByteCountEXT);
VULKAN_FN(vkCmdBeginQueryIndexedEXT);
VULKAN_FN(vkCmdEndQueryIndexedEXT);
#endif
}; };
} }