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,
ANGLE_TRY(mState.getFirstColorAttachment()->getRenderTarget(context, &renderTarget));
renderTarget->image->updateLayout(VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL);
commandBuffer->beginRenderPass(*renderPass, *framebuffer, glState.getViewport(),
attachmentClearValues);
commandBuffer->beginRenderPass(*renderPass, *framebuffer, glState.getViewport(), 1,
attachmentClearValues.data());
setQueueSerial(queueSerial);
if (mBackbuffer)
......
......@@ -404,9 +404,9 @@ void CommandBuffer::copyImage(const vk::Image &srcImage,
void CommandBuffer::beginRenderPass(const RenderPass &renderPass,
const Framebuffer &framebuffer,
const gl::Rectangle &renderArea,
const std::vector<VkClearValue> &clearValues)
uint32_t clearValueCount,
const VkClearValue *clearValues)
{
ASSERT(!clearValues.empty());
ASSERT(mHandle != VK_NULL_HANDLE);
VkRenderPassBeginInfo beginInfo;
......@@ -418,8 +418,8 @@ void CommandBuffer::beginRenderPass(const RenderPass &renderPass,
beginInfo.renderArea.offset.y = static_cast<uint32_t>(renderArea.y);
beginInfo.renderArea.extent.width = static_cast<uint32_t>(renderArea.width);
beginInfo.renderArea.extent.height = static_cast<uint32_t>(renderArea.height);
beginInfo.clearValueCount = static_cast<uint32_t>(clearValues.size());
beginInfo.pClearValues = clearValues.data();
beginInfo.clearValueCount = clearValueCount;
beginInfo.pClearValues = clearValues;
vkCmdBeginRenderPass(mHandle, &beginInfo, VK_SUBPASS_CONTENTS_INLINE);
}
......
......@@ -348,7 +348,8 @@ class CommandBuffer : public WrappedObject<CommandBuffer, VkCommandBuffer>
void beginRenderPass(const RenderPass &renderPass,
const Framebuffer &framebuffer,
const gl::Rectangle &renderArea,
const std::vector<VkClearValue> &clearValues);
uint32_t clearValueCount,
const VkClearValue *clearValues);
void endRenderPass();
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