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

Cache drawingBufferWidth/drawingBufferHeight in WebGLRenderingContext #20530

Open
nox opened this issue Apr 4, 2018 · 0 comments · May be fixed by #26078
Open

Cache drawingBufferWidth/drawingBufferHeight in WebGLRenderingContext #20530

nox opened this issue Apr 4, 2018 · 0 comments · May be fixed by #26078

Comments

@nox
Copy link
Member

@nox nox commented Apr 4, 2018

Those two values should be retrieved through a single WebGLCommand message, and we should cache (and invalidate them properly when things change of course) on the DOM side in WebGLRenderingContext directly.

@emilio emilio mentioned this issue Apr 4, 2018
102 of 132 tasks complete
@jdm jdm added this to To do in babylon.js perf issues Mar 4, 2020
@jdm jdm linked a pull request that will close this issue Mar 31, 2020
4 of 4 tasks complete
bors-servo added a commit that referenced this issue Mar 31, 2020
webgl: Avoid IPC for drawingBufferWidth/Height APIs

In the common case, there is no need to fetch the current webgl context's surface size every time these APIs are used. We only expect the values to change when the canvas is resized, or when an opaque framebuffer is bound, or the default framebuffer is bound when an opaque framebuffer was previously bound. We can store any previously determined surface size otherwise, and report it without any IPC.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #20530
- [x] There are tests for these changes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Linked pull requests

Successfully merging a pull request may close this issue.

1 participant
You can’t perform that action at this time.