Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix immersive mode panic on three.js rollercoaster on hololens #24242

Merged
merged 5 commits into from Sep 24, 2019

Conversation

@jdm
Copy link
Member

jdm commented Sep 19, 2019

We have some special logic about texture formats when creating drawing buffers for WebGL that needs to be shared with the code that creates a separate framebuffer for immersive mode.


  • ./mach build -d does not report any errors
  • ./mach test-tidy does not report any errors
  • These changes fix #24083 and fix #20595.
  • These changes do not require tests because no CI for hololens; tested manually in the emulator.

This change is Reviewable

@highfive
Copy link

highfive commented Sep 19, 2019

Heads up! This PR modifies the following files:

  • @asajeffrey: components/script/dom/webglframebuffer.rs, components/script/dom/webglrenderingcontext.rs, components/script/dom/xrwebgllayer.rs, components/script/dom/bindings/trace.rs
  • @KiChjang: components/script/dom/webglframebuffer.rs, components/script/dom/webglrenderingcontext.rs, components/script/dom/xrwebgllayer.rs, components/script/dom/bindings/trace.rs
@highfive
Copy link

highfive commented Sep 19, 2019

warning Warning warning

  • These commits modify script code, but no tests are modified. Please consider adding a test!
@jdm
Copy link
Member Author

jdm commented Sep 19, 2019

@highfive highfive assigned asajeffrey and unassigned emilio Sep 19, 2019
Copy link
Member

asajeffrey left a comment

I'm a bit uncomfortable that this is causing panic, since AFAICT all of the original code could be replicated in user WebGL. That said, this is a definite improvement. @bors-servo r+

@asajeffrey
Copy link
Member

asajeffrey commented Sep 19, 2019

Ah, does bors not listen to review comments? @bors-servo r+

@bors-servo
Copy link
Contributor

bors-servo commented Sep 19, 2019

📌 Commit 38351d5 has been approved by asajeffrey

@bors-servo
Copy link
Contributor

bors-servo commented Sep 19, 2019

Testing commit 38351d5 with merge 4c90df7...

bors-servo added a commit that referenced this pull request Sep 19, 2019
Fix immersive mode panic on three.js rollercoaster on hololens

We have some special logic about texture formats when creating drawing buffers for WebGL that needs to be shared with the code that creates a separate framebuffer for immersive mode.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #24083 (GitHub issue number if applicable)
- [x] These changes do not require tests because no CI for hololens; tested manually in the emulator.

<!-- 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/24242)
<!-- Reviewable:end -->
@jdm
Copy link
Member Author

jdm commented Sep 19, 2019

That's a good point. I should put together some testcases to experiment; filed #24244 to do that.

@bors-servo
Copy link
Contributor

bors-servo commented Sep 19, 2019

💔 Test failed - linux-rel-css

@jdm jdm force-pushed the jdm:xr-webgllayer-format branch from 38351d5 to f6727ed Sep 19, 2019
@jdm jdm force-pushed the jdm:xr-webgllayer-format branch from f6727ed to 4edec82 Sep 19, 2019
@jdm
Copy link
Member Author

jdm commented Sep 19, 2019

@bors-servo try=wpt

@bors-servo
Copy link
Contributor

bors-servo commented Sep 19, 2019

Trying commit 4edec82 with merge c7ad5bc...

bors-servo added a commit that referenced this pull request Sep 19, 2019
Fix immersive mode panic on three.js rollercoaster on hololens

We have some special logic about texture formats when creating drawing buffers for WebGL that needs to be shared with the code that creates a separate framebuffer for immersive mode.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #24083 (GitHub issue number if applicable)
- [x] These changes do not require tests because no CI for hololens; tested manually in the emulator.

<!-- 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/24242)
<!-- Reviewable:end -->
@jdm
Copy link
Member Author

jdm commented Sep 19, 2019

r? @asajeffrey

The addition of RGB to the framebuffer completion checks exposed some additional implementation holes which were easy enough to clean up while I was investigating them.

@jdm jdm force-pushed the jdm:xr-webgllayer-format branch 2 times, most recently from d65be06 to 368e030 Sep 19, 2019
Copy link
Member

asajeffrey left a comment

LGTM

expected: FAIL

[WebGL test #82: getError expected: INVALID_OPERATION. Was NO_ERROR : IMPLEMENTATION_COLOR_READ_FORMAT should fail for incomplete framebuffers.]
expected: FAIL

This comment has been minimized.

Copy link
@asajeffrey
@jdm
Copy link
Member Author

jdm commented Sep 23, 2019

@bors-servo retry

1 similar comment
@jdm
Copy link
Member Author

jdm commented Sep 23, 2019

@bors-servo retry

@jdm
Copy link
Member Author

jdm commented Sep 23, 2019

@jdm
Copy link
Member Author

jdm commented Sep 23, 2019

@bors-servo r=nox,asajeffrey

@bors-servo
Copy link
Contributor

bors-servo commented Sep 23, 2019

📌 Commit ce12723 has been approved by nox,asajeffrey

@highfive highfive assigned nox and unassigned asajeffrey Sep 23, 2019
@jdm
Copy link
Member Author

jdm commented Sep 23, 2019

@jdm jdm closed this Sep 23, 2019
@jdm jdm reopened this Sep 23, 2019
@jdm
Copy link
Member Author

jdm commented Sep 23, 2019

@bors-servo r=asajeffrey,nox

@bors-servo
Copy link
Contributor

bors-servo commented Sep 23, 2019

📌 Commit ea715a7 has been approved by asajeffrey,nox

@highfive highfive assigned asajeffrey and unassigned nox Sep 23, 2019
@bors-servo
Copy link
Contributor

bors-servo commented Sep 23, 2019

Testing commit ea715a7 with merge 8c55623...

bors-servo added a commit that referenced this pull request Sep 23, 2019
Fix immersive mode panic on three.js rollercoaster on hololens

We have some special logic about texture formats when creating drawing buffers for WebGL that needs to be shared with the code that creates a separate framebuffer for immersive mode.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #24083 and fix #20595.
- [x] These changes do not require tests because no CI for hololens; tested manually in the emulator.

<!-- 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/24242)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Sep 23, 2019

💔 Test failed - status-taskcluster

@jdm
Copy link
Member Author

jdm commented Sep 23, 2019

@bors-servo retry

@bors-servo
Copy link
Contributor

bors-servo commented Sep 23, 2019

Testing commit ea715a7 with merge 6ca62aa...

bors-servo added a commit that referenced this pull request Sep 23, 2019
Fix immersive mode panic on three.js rollercoaster on hololens

We have some special logic about texture formats when creating drawing buffers for WebGL that needs to be shared with the code that creates a separate framebuffer for immersive mode.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #24083 and fix #20595.
- [x] These changes do not require tests because no CI for hololens; tested manually in the emulator.

<!-- 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/24242)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Sep 24, 2019

☀️ Test successful - linux-rel-css, linux-rel-wpt, status-taskcluster
Approved by: asajeffrey,nox
Pushing 6ca62aa to master...

@bors-servo bors-servo merged commit ea715a7 into servo:master Sep 24, 2019
1 of 3 checks passed
1 of 3 checks passed
Taskcluster (pull_request) TaskGroup: failure
Details
continuous-integration/appveyor/pr AppVeyor build failed
Details
homu Test successful
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

7 participants
You can’t perform that action at this time.