Index: src/gpu/vk/GrVkCommandBuffer.cpp |
diff --git a/src/gpu/vk/GrVkCommandBuffer.cpp b/src/gpu/vk/GrVkCommandBuffer.cpp |
index d26d06d1c34a2d642b8b7d464e2b0df75eedae09..f295f56b1729dfe0d1c3a4f2d8a81da7515436bf 100644 |
--- a/src/gpu/vk/GrVkCommandBuffer.cpp |
+++ b/src/gpu/vk/GrVkCommandBuffer.cpp |
@@ -355,6 +355,15 @@ void GrVkCommandBuffer::bindDescriptorSets(const GrVkGpu* gpu, |
program->addUniformResources(*this); |
} |
+void GrVkCommandBuffer::bindPipeline(const GrVkGpu* gpu, const GrVkPipeline* pipeline) { |
jvanverth1
2016/03/18 15:02:26
I'm curious why you moved this from the header.
egdaniel
2016/03/18 19:29:58
all the other command buffer functions were in the
|
+ SkASSERT(fIsActive); |
+ SkASSERT(fActiveRenderPass); |
+ GR_VK_CALL(gpu->vkInterface(), CmdBindPipeline(fCmdBuffer, |
+ VK_PIPELINE_BIND_POINT_GRAPHICS, |
+ pipeline->pipeline())); |
+ addResource(pipeline); |
+} |
+ |
void GrVkCommandBuffer::drawIndexed(const GrVkGpu* gpu, |
uint32_t indexCount, |
uint32_t instanceCount, |
@@ -384,3 +393,31 @@ void GrVkCommandBuffer::draw(const GrVkGpu* gpu, |
firstVertex, |
firstInstance)); |
} |
+ |
+void GrVkCommandBuffer::setViewport(const GrVkGpu* gpu, |
+ uint32_t firstViewport, |
+ uint32_t viewportCount, |
+ const VkViewport* viewports) { |
+ SkASSERT(fIsActive); |
+ GR_VK_CALL(gpu->vkInterface(), CmdSetViewport(fCmdBuffer, |
+ firstViewport, |
+ viewportCount, |
+ viewports)); |
+} |
+ |
+void GrVkCommandBuffer::setScissor(const GrVkGpu* gpu, |
+ uint32_t firstScissor, |
+ uint32_t scissorCount, |
+ const VkRect2D* scissors) { |
+ SkASSERT(fIsActive); |
+ GR_VK_CALL(gpu->vkInterface(), CmdSetScissor(fCmdBuffer, |
+ firstScissor, |
+ scissorCount, |
+ scissors)); |
+} |
+ |
+void GrVkCommandBuffer::setBlendConstants(const GrVkGpu* gpu, |
+ const float blendConstants[4]) { |
+ SkASSERT(fIsActive); |
+ GR_VK_CALL(gpu->vkInterface(), CmdSetBlendConstants(fCmdBuffer, blendConstants)); |
+} |