Description was changed from
==========
fix the bug in invalidate-framebuffer.html
BUG=429053
==========
to
==========
fix the bug in invalidate-framebuffer.html
BUG=429053
==========
Description was changed from
==========
fix the bug in invalidate-framebuffer.html
BUG=429053
==========
to
==========
fix the bug in invalidate-framebuffer.html
BUG=295792
==========
yunchao
Description was changed from ========== fix the bug in invalidate-framebuffer.html BUG=295792 ========== to ========== fix ...
Description was changed from
==========
fix the bug in invalidate-framebuffer.html
BUG=295792
==========
to
==========
fix the bug in invalidate-framebuffer.html
BUG=554902
==========
Description was changed from
==========
fix the bug in invalidate-framebuffer.html
BUG=554902
==========
to
==========
WebGL 2: fix the bug in invalidate-framebuffer.html
BUG=554902
==========
yunchao
Description was changed from ========== WebGL 2: fix the bug in invalidate-framebuffer.html BUG=554902 ========== to ...
Description was changed from
==========
WebGL 2: fix the bug in invalidate-framebuffer.html
BUG=554902
==========
to
==========
WebGL 2: fix the bug in invalidate-framebuffer.html
BUG=554902
TEST=conformance2/renderbuffers/invalidate-framebuffer.html, gpu_unittests
==========
yunchao
PTAL. Thanks a lot! https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp (right): https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp#newcode390 third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:390: case GL_BACK: In GLES spec, ...
https://codereview.chromium.org/1435183002/diff/20001/gpu/command_buffer/build_gles2_cmd_buffer.py File gpu/command_buffer/build_gles2_cmd_buffer.py (left): https://codereview.chromium.org/1435183002/diff/20001/gpu/command_buffer/build_gles2_cmd_buffer.py#oldcode606 gpu/command_buffer/build_gles2_cmd_buffer.py:606: 'InvalidateFrameBufferTarget': { You should not remove this. For invalidateFramebuffer(), ...
Thanks for this contribution and sorry for the long delay reviewing. Mostly looks OK, but ...
5 years, 1 month ago
(2015-11-17 23:06:37 UTC)
#11
Thanks for this contribution and sorry for the long delay reviewing. Mostly
looks OK, but a few updates are needed.
https://codereview.chromium.org/1435183002/diff/20001/gpu/command_buffer/buil...
File gpu/command_buffer/build_gles2_cmd_buffer.py (left):
https://codereview.chromium.org/1435183002/diff/20001/gpu/command_buffer/buil...
gpu/command_buffer/build_gles2_cmd_buffer.py:606: 'InvalidateFrameBufferTarget':
{
On 2015/11/13 03:18:11, Zhenyao Mo wrote:
> You should not remove this. For invalidateFramebuffer(), only GL_FRAMEBUFFER.
Actually it looks like this was changed in ES spec 3.0.1 (see section E.5 of the
ES 3.0.4 spec). The spec allows all 3 values to be passed. The man page is out
of date. Filed Khronos internal bug 15181 about this.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
File third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp
(right):
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:378: bool
WebGL2RenderingContextBase::checkAndTranslateAttachments(const char*
functionName, GLenum target, Vector<GLenum>& attachments)
It's a little nasty to modify the Vector which comes in from the JavaScript
bindings. I think it would be better to mark it as a const Vector& of GLenum in
WebGL2RenderingContextBase.h and here, and allocate a new vector with the
translated values.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:381:
GLenum* buffer = attachments.data();
It's not necessary to fetch the data pointer out of "attachments" -- just
reference attachments[i] directly.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:390: case
GL_BACK:
On 2015/11/12 12:14:50, yunchao wrote:
> In GLES spec, it is GL_COLOR, but in WebGL spec, it is GL_BACK (say in
> drawBuffer). Both of them means GL_COLOR_ATTACHMENT0 of the internal fbo
> (default framebuffer of WebGL).
>
> I would like it is GL_BACK, then it is aligned with other APIs in WebGL spec.
Sorry, but no, this should follow the OpenGL ES specification. WebGL does not
deviate arbitrarily from the ES specs.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:435: if
(!checkAndTranslateAttachments("invalidateFramebuffe", target, attachments))
invalidateFramebuffe -> invalidateFramebuffer
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:451: if
(width < 0 || height < 0) {
On 2015/11/12 12:14:51, yunchao wrote:
> Not sure about this code snippet, In OGL spec, it will raise a
GL_INVALID_VALUE
> for this case, but it seems be OK in GLES spec.
In this case it seems better to be safer by generating INVALID_VALUE as is
already tested by conformance2/renderbuffers/invalidate-framebuffer.html.
Otherwise it'll be necessary to clamp these to 0 to avoid INVALID_VALUE errors
from OpenGL drivers.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:456: if
(!checkAndTranslateAttachments("invalidateSubFramebuffe", target, attachments))
invalidateSubFramebuffe -> invalidateSubFramebuffer
yunchao
Patchset #3 (id:40001) has been deleted
5 years, 1 month ago
(2015-11-19 00:12:16 UTC)
#12
Patchset #3 (id:40001) has been deleted
yunchao
Patchset #3 (id:60001) has been deleted
5 years, 1 month ago
(2015-11-19 00:40:13 UTC)
#13
Patchset #3 (id:60001) has been deleted
yunchao
Thanks for your review, Ken. Code has been updated accordingly. https://codereview.chromium.org/1435183002/diff/20001/gpu/command_buffer/build_gles2_cmd_buffer.py File gpu/command_buffer/build_gles2_cmd_buffer.py (left): https://codereview.chromium.org/1435183002/diff/20001/gpu/command_buffer/build_gles2_cmd_buffer.py#oldcode606 ...
5 years, 1 month ago
(2015-11-19 01:43:00 UTC)
#14
Thanks for your review, Ken.
Code has been updated accordingly.
https://codereview.chromium.org/1435183002/diff/20001/gpu/command_buffer/buil...
File gpu/command_buffer/build_gles2_cmd_buffer.py (left):
https://codereview.chromium.org/1435183002/diff/20001/gpu/command_buffer/buil...
gpu/command_buffer/build_gles2_cmd_buffer.py:606: 'InvalidateFrameBufferTarget':
{
On 2015/11/17 23:06:37, Ken Russell wrote:
> On 2015/11/13 03:18:11, Zhenyao Mo wrote:
> > You should not remove this. For invalidateFramebuffer(), only
GL_FRAMEBUFFER.
>
> Actually it looks like this was changed in ES spec 3.0.1 (see section E.5 of
the
> ES 3.0.4 spec). The spec allows all 3 values to be passed. The man page is out
> of date. Filed Khronos internal bug 15181 about this.
Agreed.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
File third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp
(right):
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:378: bool
WebGL2RenderingContextBase::checkAndTranslateAttachments(const char*
functionName, GLenum target, Vector<GLenum>& attachments)
On 2015/11/17 23:06:37, Ken Russell wrote:
> It's a little nasty to modify the Vector which comes in from the JavaScript
> bindings. I think it would be better to mark it as a const Vector& of GLenum
in
> WebGL2RenderingContextBase.h and here, and allocate a new vector with the
> translated values.
Done.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:381:
GLenum* buffer = attachments.data();
On 2015/11/17 23:06:37, Ken Russell wrote:
> It's not necessary to fetch the data pointer out of "attachments" -- just
> reference attachments[i] directly.
Done.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:381:
GLenum* buffer = attachments.data();
On 2015/11/17 23:06:37, Ken Russell wrote:
> It's not necessary to fetch the data pointer out of "attachments" -- just
> reference attachments[i] directly.
Done.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:390: case
GL_BACK:
On 2015/11/17 23:06:37, Ken Russell wrote:
> On 2015/11/12 12:14:50, yunchao wrote:
> > In GLES spec, it is GL_COLOR, but in WebGL spec, it is GL_BACK (say in
> > drawBuffer). Both of them means GL_COLOR_ATTACHMENT0 of the internal fbo
> > (default framebuffer of WebGL).
> >
> > I would like it is GL_BACK, then it is aligned with other APIs in WebGL
spec.
>
> Sorry, but no, this should follow the OpenGL ES specification. WebGL does not
> deviate arbitrarily from the ES specs.
Done.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:435: if
(!checkAndTranslateAttachments("invalidateFramebuffe", target, attachments))
On 2015/11/17 23:06:37, Ken Russell wrote:
> invalidateFramebuffe -> invalidateFramebuffer
Done.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:451: if
(width < 0 || height < 0) {
On 2015/11/17 23:06:37, Ken Russell wrote:
> On 2015/11/12 12:14:51, yunchao wrote:
> > Not sure about this code snippet, In OGL spec, it will raise a
> GL_INVALID_VALUE
> > for this case, but it seems be OK in GLES spec.
>
> In this case it seems better to be safer by generating INVALID_VALUE as is
> already tested by conformance2/renderbuffers/invalidate-framebuffer.html.
> Otherwise it'll be necessary to clamp these to 0 to avoid INVALID_VALUE errors
> from OpenGL drivers.
OK, let's generate GL_INVALID_ENUM for this case.
https://codereview.chromium.org/1435183002/diff/20001/third_party/WebKit/Sour...
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:456: if
(!checkAndTranslateAttachments("invalidateSubFramebuffe", target, attachments))
On 2015/11/17 23:06:37, Ken Russell wrote:
> invalidateSubFramebuffe -> invalidateSubFramebuffer
Done.
Ken Russell (switch to Gerrit)
Thanks. LGTM. One typo. https://codereview.chromium.org/1435183002/diff/80001/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp (right): https://codereview.chromium.org/1435183002/diff/80001/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp#newcode383 third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp:383: // Translate GL_BACK/GL_DEPTH/GL_STENCIL, because the ...
5 years, 1 month ago
(2015-11-19 02:24:05 UTC)
#15
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1435183002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1435183002/100001
5 years, 1 month ago
(2015-11-19 05:26:16 UTC)
#17
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1435183002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1435183002/100001
5 years, 1 month ago
(2015-11-21 00:24:08 UTC)
#25
Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/138400)
5 years, 1 month ago
(2015-11-21 03:05:14 UTC)
#27
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1435183002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1435183002/100001
5 years, 1 month ago
(2015-11-23 02:10:29 UTC)
#29
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1435183002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1435183002/100001
5 years, 1 month ago
(2015-11-23 04:27:14 UTC)
#33
Issue 1435183002: WebGL 2: fix the bug in invalidate-framebuffer.html
(Closed)
Created 5 years, 1 month ago by yunchao
Modified 5 years, 1 month ago
Reviewers: Ken Russell (switch to Gerrit), Zhenyao Mo, bajones, piman
Base URL: https://chromium.googlesource.com/chromium/src.git@master
Comments: 19