Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upwebgl: Clear the drawing buffer when preserveDrawingBuffer is false. #24386
Conversation
|
@bors-servo try=wpt |
webgl: Clear the drawing buffer when preserveDrawingBuffer is false. This adds an explicit clear operation to a webgl canvas when the preserveDrawingBuffer attribute is false when creating the context. Because we're not using double buffering this may end up making some demos worse (ie. a clear operation at a random time while drawing a frame), but this problem is expected to go away when #24256 is fixed and we move to a multi-buffered frame setup. This change is important at this time because so many babylon.js demos rely on the engine clearing the frame, per the specification. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21132 - [x] There are tests for these changes
|
@paulrouget See if this change makes the babylon demos more bearable. |
|
|
|
@bors-servo try=wpt |
|
|
|
@bors-servo try=wpt |
webgl: Clear the drawing buffer when preserveDrawingBuffer is false. This adds an explicit clear operation to a webgl canvas when the preserveDrawingBuffer attribute is false when creating the context. Because we're not using double buffering this may end up making some demos worse (ie. a clear operation at a random time while drawing a frame), but this problem is expected to go away when #24256 is fixed and we move to a multi-buffered frame setup. This change is important at this time because so many babylon.js demos rely on the engine clearing the frame, per the specification. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21132 - [x] There are tests for these changes <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24386) <!-- Reviewable:end -->
|
|
|
|
|
Latest change in this PR vastly improve the babylonjs demos! |
|
The exception is the basic demo, where the mesh turns black. |
|
Also Mansion demo still have the trail. |
10c6840
to
d2b52c1
|
r? @nox The latest commit is largely cherry-picked from pcwalton@8ea6337, which is part of the ongoing WebGL rewrite that pcwalton is working on. It includes:
|
|
@bors-servo r+ |
|
|
webgl: Clear the drawing buffer when preserveDrawingBuffer is false. This adds an explicit clear operation to a webgl canvas when the preserveDrawingBuffer attribute is false when creating the context. Because we're not using double buffering this may end up making some demos worse (ie. a clear operation at a random time while drawing a frame), but this problem is expected to go away when #24256 is fixed and we move to a multi-buffered frame setup. This change is important at this time because so many babylon.js demos rely on the engine clearing the frame, per the specification. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21132 - [x] There are tests for these changes <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24386) <!-- Reviewable:end -->
|
|
|
I guess this is related angle smoketest failures
|
|
Yep. Need to not send swapbuffer messages for no webgl canvases. |
…f the next frame.
|
@bors-servo r=nox |
|
|
webgl: Clear the drawing buffer when preserveDrawingBuffer is false. This adds an explicit clear operation to a webgl canvas when the preserveDrawingBuffer attribute is false when creating the context. Because we're not using double buffering this may end up making some demos worse (ie. a clear operation at a random time while drawing a frame), but this problem is expected to go away when #24256 is fixed and we move to a multi-buffered frame setup. This change is important at this time because so many babylon.js demos rely on the engine clearing the frame, per the specification. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21132 - [x] There are tests for these changes <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24386) <!-- Reviewable:end -->
|
|
jdm commentedOct 7, 2019
•
edited by SimonSapin
This adds an explicit clear operation to a webgl canvas when the preserveDrawingBuffer attribute is false when creating the context. Because we're not using double buffering this may end up making some demos worse (ie. a clear operation at a random time while drawing a frame), but this problem is expected to go away when #24256 is fixed and we move to a multi-buffered frame setup. This change is important at this time because so many babylon.js demos rely on the engine clearing the frame, per the specification.
./mach build -ddoes not report any errors./mach test-tidydoes not report any errorsThis change is