From fa00daac41aebbd6d313ba5e14face74d6ff292f Mon Sep 17 00:00:00 2001 From: saschawillems Date: Fri, 16 Jun 2017 21:44:53 +0200 Subject: [PATCH] Removed unnecessary preserve attachment and shader attachment writes (fixes validation) --- data/shaders/subpasses/composition.frag | 12 ++---------- data/shaders/subpasses/composition.frag.spv | Bin 3940 -> 3704 bytes subpasses/subpasses.cpp | 3 --- 3 files changed, 2 insertions(+), 13 deletions(-) diff --git a/data/shaders/subpasses/composition.frag b/data/shaders/subpasses/composition.frag index 0984b0ec..e8451826 100644 --- a/data/shaders/subpasses/composition.frag +++ b/data/shaders/subpasses/composition.frag @@ -9,10 +9,7 @@ layout (input_attachment_index = 2, binding = 2) uniform subpassInput samplerAlb layout (location = 0) in vec2 inUV; -layout (location = 0) out vec4 outFragcolor; -layout (location = 1) out vec4 outPosition; -layout (location = 2) out vec4 outNormal; -layout (location = 3) out vec4 outAlbedo; +layout (location = 0) out vec4 outColor; layout (constant_id = 0) const int NUM_LIGHTS = 64; @@ -72,10 +69,5 @@ void main() fragcolor += diff;// + spec; } - outFragcolor = vec4(fragcolor, 1.0); - - // Write G-Buffer attachments to avoid undefined behaviour (validation error) - outPosition = vec4(0.0); - outNormal = vec4(0.0); - outAlbedo = vec4(0.0); + outColor = vec4(fragcolor, 1.0); } \ No newline at end of file diff --git a/data/shaders/subpasses/composition.frag.spv b/data/shaders/subpasses/composition.frag.spv index 6dacd6389d98f0a53ec47b3caf7d1d86a7a0af1e..9c568e1a7815fe0d7ab5d7704366dca520218713 100644 GIT binary patch delta 141 zcmaDN_d|x4nMs+Qfq@YSIT%_e^4f~CGq5l)fN^eOW*(5qPy@s*8*>er#96`Y{L&KV z{G9wEkQ^&eWy|KTO!172Et^|e{FyYxfg(*n88#qh0%8RqzZpm~0x?M38p?0k?8*L~ Lo#QW1!UBi^jzJdZ delta 387 zcmZ8bJxjw-6uo)*s)Z~rE)s;SS+W#C6uQ(+-5ffUr!6IrDXo zA6yEa6OyGo4)>n(&OP`39dEDD>#pa;)t}!by}d6CtwY{0Ixv(qZ4)O zwYphVlTt75O=e1biHk=s^c(Y#R;ejkjkD0MOquJf^DztBIJ;ZSO{+OlH{WVzC5#9G z3%JBF94A*D=P0?|@wz#1uGRAytdEd5&aYT}IYiw6(>?TFM$_AKMw1^Q>kZWdxb_76 l9hE0hr=Ps;w2`>Yr}yi}7Z~ROT*{sc`kvwJcZfL!{sA_WH68!} diff --git a/subpasses/subpasses.cpp b/subpasses/subpasses.cpp index 54d2c34e..e6e6b904 100644 --- a/subpasses/subpasses.cpp +++ b/subpasses/subpasses.cpp @@ -365,9 +365,6 @@ public: // Use the color attachments filled in the first pass as input attachments subpassDescriptions[1].inputAttachmentCount = 3; subpassDescriptions[1].pInputAttachments = inputReferences; - // Preserve attachment 1 (position + depth) for next subpass - subpassDescriptions[1].preserveAttachmentCount = 1; - subpassDescriptions[1].pPreserveAttachments = &preserveAttachmentIndex; // Third subpass: Forward transparency // ----------------------------------------------------------------------------------------