Commit 190d9a81 by Shahbaz Youssefi Committed by Commit Bot

Fix RenderingLimitToDefaultFBOSizeWithNoAttachments test

MAX_DRAW_BUFFERS has a minimum value of 4. This test was unconditionally using 6 draw buffers. Bug: angleproject:4092 Bug: angleproject:4180 Change-Id: I069874a6402da1cb007bf9504e68b9910951cf63 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1944527Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: 's avatarAlexis Hétu <sugoi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
parent 745999a9
...@@ -990,8 +990,6 @@ TEST_P(FramebufferTest_ES31, RenderingLimitToDefaultFBOSizeWithNoAttachments) ...@@ -990,8 +990,6 @@ TEST_P(FramebufferTest_ES31, RenderingLimitToDefaultFBOSizeWithNoAttachments)
ANGLE_SKIP_TEST_IF(IsLinux() && IsAMD() && IsDesktopOpenGL()); ANGLE_SKIP_TEST_IF(IsLinux() && IsAMD() && IsDesktopOpenGL());
// Occlusion query reports fragments outside the render area are still rendered // Occlusion query reports fragments outside the render area are still rendered
ANGLE_SKIP_TEST_IF(IsAndroid() || (IsWindows() && (IsIntel() || IsAMD()))); ANGLE_SKIP_TEST_IF(IsAndroid() || (IsWindows() && (IsIntel() || IsAMD())));
// http://anglebug.com/4092
ANGLE_SKIP_TEST_IF(isSwiftshader());
constexpr char kVS1[] = R"(#version 310 es constexpr char kVS1[] = R"(#version 310 es
in layout(location = 0) highp vec2 a_position; in layout(location = 0) highp vec2 a_position;
...@@ -1002,7 +1000,7 @@ void main() ...@@ -1002,7 +1000,7 @@ void main()
constexpr char kFS1[] = R"(#version 310 es constexpr char kFS1[] = R"(#version 310 es
uniform layout(location = 0) highp ivec2 u_expectedSize; uniform layout(location = 0) highp ivec2 u_expectedSize;
out layout(location = 5) mediump vec4 f_color; out layout(location = 3) mediump vec4 f_color;
void main() void main()
{ {
if (ivec2(gl_FragCoord.xy) != u_expectedSize) discard; if (ivec2(gl_FragCoord.xy) != u_expectedSize) discard;
...@@ -1076,18 +1074,18 @@ void main() ...@@ -1076,18 +1074,18 @@ void main()
glBindTexture(GL_TEXTURE_2D, mTexture.get()); glBindTexture(GL_TEXTURE_2D, mTexture.get());
glTexStorage2D(GL_TEXTURE_2D, 1, GL_RGBA8, width, height); glTexStorage2D(GL_TEXTURE_2D, 1, GL_RGBA8, width, height);
const GLenum bufs[] = {GL_NONE, GL_NONE, GL_NONE, GL_NONE, GL_NONE, GL_COLOR_ATTACHMENT5}; const GLenum bufs[] = {GL_NONE, GL_NONE, GL_NONE, GL_COLOR_ATTACHMENT3};
glFramebufferTexture2D(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT5, GL_TEXTURE_2D, mTexture.get(), glFramebufferTexture2D(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT3, GL_TEXTURE_2D, mTexture.get(),
0); 0);
EXPECT_GLENUM_EQ(GL_FRAMEBUFFER_COMPLETE, glCheckFramebufferStatus(GL_FRAMEBUFFER)); EXPECT_GLENUM_EQ(GL_FRAMEBUFFER_COMPLETE, glCheckFramebufferStatus(GL_FRAMEBUFFER));
glDrawBuffers(6, bufs); glDrawBuffers(4, bufs);
validateSamplePass(query, passedCount, width, height); validateSamplePass(query, passedCount, width, height);
// If fbo's attachment has been removed, the rendering size should be the same as framebuffer // If fbo's attachment has been removed, the rendering size should be the same as framebuffer
// default size. // default size.
glFramebufferTexture2D(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT5, 0, 0, 0); glFramebufferTexture2D(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT3, 0, 0, 0);
EXPECT_GLENUM_EQ(GL_FRAMEBUFFER_COMPLETE, glCheckFramebufferStatus(GL_FRAMEBUFFER)); EXPECT_GLENUM_EQ(GL_FRAMEBUFFER_COMPLETE, glCheckFramebufferStatus(GL_FRAMEBUFFER));
validateSamplePass(query, passedCount, defaultWidth, defaultHeight); validateSamplePass(query, passedCount, defaultWidth, defaultHeight);
......
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