Title: [161375] trunk
- Revision
- 161375
- Author
- [email protected]
- Date
- 2014-01-06 14:43:20 -0800 (Mon, 06 Jan 2014)
Log Message
[WebGL] FBO Depth Buffer Attachment Function Improperly Clearing with 0
https://bugs.webkit.org/show_bug.cgi?id=126538
<rdar://problem/15201336>
Reviewed by Dean Jackson.
Tested by webgl/1.0.2/resources/webgl_test_files/conformance/renderbuffers/framebuffer-object-attachment.html
* html/canvas/WebGLFramebuffer.cpp:
(WebCore::WebGLFramebuffer::initializeAttachments): Clear depth buffer with 1.0f (rather than 0), to match expected
default (clear) buffer state for OpenGL. Using 0 would require us to flip the clear mask for the depth attachment
type.
Modified Paths
Diff
Modified: trunk/LayoutTests/webgl/1.0.2/resources/webgl_test_files/conformance/renderbuffers/framebuffer-object-attachment.html (161374 => 161375)
--- trunk/LayoutTests/webgl/1.0.2/resources/webgl_test_files/conformance/renderbuffers/framebuffer-object-attachment.html 2014-01-06 22:38:12 UTC (rev 161374)
+++ trunk/LayoutTests/webgl/1.0.2/resources/webgl_test_files/conformance/renderbuffers/framebuffer-object-attachment.html 2014-01-06 22:43:20 UTC (rev 161375)
@@ -206,6 +206,7 @@
gl.framebufferRenderbuffer(gl.FRAMEBUFFER, test.firstAttach, gl.RENDERBUFFER, firstRb);
shouldBe('gl.checkFramebufferStatus(gl.FRAMEBUFFER)', 'gl.FRAMEBUFFER_COMPLETE');
+ //gl.clear(gl.DEPTH_BUFFER_BIT);
gl.enable(gl.DEPTH_TEST);
var program = wtu.setupColorQuad(gl);
// Test it works
Modified: trunk/LayoutTests/webgl/1.0.2/resources/webgl_test_files/conformance/resources/webgl-test-utils.js (161374 => 161375)
--- trunk/LayoutTests/webgl/1.0.2/resources/webgl_test_files/conformance/resources/webgl-test-utils.js 2014-01-06 22:38:12 UTC (rev 161374)
+++ trunk/LayoutTests/webgl/1.0.2/resources/webgl_test_files/conformance/resources/webgl-test-utils.js 2014-01-06 22:43:20 UTC (rev 161375)
@@ -863,7 +863,7 @@
}
logFn('at (' + (x + (i % width)) + ', ' + (y + Math.floor(i / width)) +
') expected: ' + color + ' was ' + was);
- return;
+ //return;
}
}
}
Modified: trunk/Source/WebCore/ChangeLog (161374 => 161375)
--- trunk/Source/WebCore/ChangeLog 2014-01-06 22:38:12 UTC (rev 161374)
+++ trunk/Source/WebCore/ChangeLog 2014-01-06 22:43:20 UTC (rev 161375)
@@ -1,3 +1,18 @@
+2014-01-06 Brent Fulgham <[email protected]>
+
+ [WebGL] FBO Depth Buffer Attachment Function Improperly Clearing with 0
+ https://bugs.webkit.org/show_bug.cgi?id=126538
+ <rdar://problem/15201336>
+
+ Reviewed by Dean Jackson.
+
+ Tested by webgl/1.0.2/resources/webgl_test_files/conformance/renderbuffers/framebuffer-object-attachment.html
+
+ * html/canvas/WebGLFramebuffer.cpp:
+ (WebCore::WebGLFramebuffer::initializeAttachments): Clear depth buffer with 1.0f (rather than 0), to match expected
+ default (clear) buffer state for OpenGL. Using 0 would require us to flip the clear mask for the depth attachment
+ type.
+
2014-01-06 Simon Fraser <[email protected]>
Add new files for UI-side scrolling
Modified: trunk/Source/WebCore/html/canvas/WebGLFramebuffer.cpp (161374 => 161375)
--- trunk/Source/WebCore/html/canvas/WebGLFramebuffer.cpp 2014-01-06 22:38:12 UTC (rev 161374)
+++ trunk/Source/WebCore/html/canvas/WebGLFramebuffer.cpp 2014-01-06 22:43:20 UTC (rev 161375)
@@ -538,7 +538,7 @@
if (initDepth) {
g3d->getFloatv(GraphicsContext3D::DEPTH_CLEAR_VALUE, &depthClearValue);
g3d->getBooleanv(GraphicsContext3D::DEPTH_WRITEMASK, &depthMask);
- g3d->clearDepth(0);
+ g3d->clearDepth(1.0f);
g3d->depthMask(true);
}
if (initStencil) {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes