Commit e218f15f by Jamie Madill Committed by Commit Bot

Vulkan: Remove std::vector arg from beginRenderPass.

We don't want to force the RenderPass code to use std::vector when we are working with static data. Change it to take a pointer. Bug: angleproject:2264 Change-Id: I07a077719fb9b4abc33a0cfcccc178d0544b7f06 Reviewed-on: https://chromium-review.googlesource.com/789535 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
parent 97fa8557
...@@ -559,8 +559,8 @@ gl::Error FramebufferVk::beginRenderPass(const gl::Context *context, ...@@ -559,8 +559,8 @@ gl::Error FramebufferVk::beginRenderPass(const gl::Context *context,
ANGLE_TRY(mState.getFirstColorAttachment()->getRenderTarget(context, &renderTarget)); ANGLE_TRY(mState.getFirstColorAttachment()->getRenderTarget(context, &renderTarget));
renderTarget->image->updateLayout(VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL); renderTarget->image->updateLayout(VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL);
commandBuffer->beginRenderPass(*renderPass, *framebuffer, glState.getViewport(), commandBuffer->beginRenderPass(*renderPass, *framebuffer, glState.getViewport(), 1,
attachmentClearValues); attachmentClearValues.data());
setQueueSerial(queueSerial); setQueueSerial(queueSerial);
if (mBackbuffer) if (mBackbuffer)
......
...@@ -404,9 +404,9 @@ void CommandBuffer::copyImage(const vk::Image &srcImage, ...@@ -404,9 +404,9 @@ void CommandBuffer::copyImage(const vk::Image &srcImage,
void CommandBuffer::beginRenderPass(const RenderPass &renderPass, void CommandBuffer::beginRenderPass(const RenderPass &renderPass,
const Framebuffer &framebuffer, const Framebuffer &framebuffer,
const gl::Rectangle &renderArea, const gl::Rectangle &renderArea,
const std::vector<VkClearValue> &clearValues) uint32_t clearValueCount,
const VkClearValue *clearValues)
{ {
ASSERT(!clearValues.empty());
ASSERT(mHandle != VK_NULL_HANDLE); ASSERT(mHandle != VK_NULL_HANDLE);
VkRenderPassBeginInfo beginInfo; VkRenderPassBeginInfo beginInfo;
...@@ -418,8 +418,8 @@ void CommandBuffer::beginRenderPass(const RenderPass &renderPass, ...@@ -418,8 +418,8 @@ void CommandBuffer::beginRenderPass(const RenderPass &renderPass,
beginInfo.renderArea.offset.y = static_cast<uint32_t>(renderArea.y); beginInfo.renderArea.offset.y = static_cast<uint32_t>(renderArea.y);
beginInfo.renderArea.extent.width = static_cast<uint32_t>(renderArea.width); beginInfo.renderArea.extent.width = static_cast<uint32_t>(renderArea.width);
beginInfo.renderArea.extent.height = static_cast<uint32_t>(renderArea.height); beginInfo.renderArea.extent.height = static_cast<uint32_t>(renderArea.height);
beginInfo.clearValueCount = static_cast<uint32_t>(clearValues.size()); beginInfo.clearValueCount = clearValueCount;
beginInfo.pClearValues = clearValues.data(); beginInfo.pClearValues = clearValues;
vkCmdBeginRenderPass(mHandle, &beginInfo, VK_SUBPASS_CONTENTS_INLINE); vkCmdBeginRenderPass(mHandle, &beginInfo, VK_SUBPASS_CONTENTS_INLINE);
} }
......
...@@ -348,7 +348,8 @@ class CommandBuffer : public WrappedObject<CommandBuffer, VkCommandBuffer> ...@@ -348,7 +348,8 @@ class CommandBuffer : public WrappedObject<CommandBuffer, VkCommandBuffer>
void beginRenderPass(const RenderPass &renderPass, void beginRenderPass(const RenderPass &renderPass,
const Framebuffer &framebuffer, const Framebuffer &framebuffer,
const gl::Rectangle &renderArea, const gl::Rectangle &renderArea,
const std::vector<VkClearValue> &clearValues); uint32_t clearValueCount,
const VkClearValue *clearValues);
void endRenderPass(); void endRenderPass();
void draw(uint32_t vertexCount, void draw(uint32_t vertexCount,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment