Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(158)

Unified Diff: src/gpu/vk/GrVkRenderTarget.cpp

Issue 2256843002: Don't add the resolve attachment to vulkan render passes. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/gpu/vk/GrVkRenderTarget.cpp
diff --git a/src/gpu/vk/GrVkRenderTarget.cpp b/src/gpu/vk/GrVkRenderTarget.cpp
index dc966cab816413180ca10a3e381f014fc1b396c1..b86a640e3df4b04d76d16fd852276fe2d085f1eb 100644
--- a/src/gpu/vk/GrVkRenderTarget.cpp
+++ b/src/gpu/vk/GrVkRenderTarget.cpp
@@ -239,7 +239,7 @@ void GrVkRenderTarget::createFramebuffer(GrVkGpu* gpu) {
const GrVkImageView* stencilView = this->stencilAttachmentView();
fFramebuffer = GrVkFramebuffer::Create(gpu, this->width(), this->height(),
fCachedSimpleRenderPass, fColorAttachmentView,
- fResolveAttachmentView, stencilView);
+ nullptr, stencilView);
jvanverth1 2016/08/26 15:03:19 This is the only place we use Framebuffer::Create(
egdaniel 2016/08/26 15:48:45 So in my head I was thinking we should save this c
SkASSERT(fFramebuffer);
}
@@ -253,13 +253,14 @@ void GrVkRenderTarget::getAttachmentsDescriptor(
desc->fColor.fSamples = colorSamples ? colorSamples : 1;
*attachmentFlags = GrVkRenderPass::kColor_AttachmentFlag;
uint32_t attachmentCount = 1;
+#if 0 // We don't currently attach the resolve to the framebuffer since we manually do all resolving
if (colorSamples > 0) {
jvanverth1 2016/08/26 15:03:19 Do we need this code?
egdaniel 2016/08/26 15:48:45 Done.
desc->fResolve.fFormat = colorFormat;
desc->fResolve.fSamples = 1;
*attachmentFlags |= GrVkRenderPass::kResolve_AttachmentFlag;
++attachmentCount;
}
-
+#endif
const GrStencilAttachment* stencil = this->renderTargetPriv().getStencilAttachment();
if (stencil) {
const GrVkStencilAttachment* vkStencil = static_cast<const GrVkStencilAttachment*>(stencil);
@@ -284,11 +285,15 @@ GrVkRenderTarget::~GrVkRenderTarget() {
void GrVkRenderTarget::addResources(GrVkCommandBuffer& commandBuffer) const {
commandBuffer.addResource(this->framebuffer());
- commandBuffer.addResource(this->resource());
commandBuffer.addResource(this->colorAttachmentView());
if (this->msaaImageResource()) {
commandBuffer.addResource(this->msaaImageResource());
- commandBuffer.addResource(this->resolveAttachmentView());
+ // Current we do not add the resolve the framebuffer so we don't need to track the resource
+ // here
+ // commandBuffer.addResource(this->resolveAttachmentView());
jvanverth1 2016/08/26 15:03:19 Again, do we need this code?
egdaniel 2016/08/26 15:48:46 Done.
+ // commandBuffer.addResource(this->resource());
+ } else {
+ commandBuffer.addResource(this->resource());
}
if (this->stencilImageResource()) {
commandBuffer.addResource(this->stencilImageResource());

Powered by Google App Engine
This is Rietveld 408576698