Open
Bug 719168
Opened 13 years ago
Updated 2 months ago
Use async ReadPixels into a PBO for faster WebGL with non-accel layers
Categories
(Core :: Graphics: CanvasWebGL, enhancement, P2)
Core
Graphics: CanvasWebGL
Tracking
()
NEW
Tracking | Status | |
---|---|---|
e10s | later | --- |
People
(Reporter: bjacob, Unassigned, NeedInfo)
References
Details
(Whiteboard: webgl-next)
WebGL on non-accelerated layers is slow because we have to glReadPixels every frame.
A big part of why glReadPixels is slowing us down is that it's synchronous. There exists an asynchronous variant, reading the pixels into a PBO, and we should seriously consider that. It should fit well with OMTC. It would get us faster WebGL where we can't have accelerated layers.
See:
http://www.songho.ca/opengl/gl_pbo.html
Comment 1•13 years ago
|
||
Indeed. I believe it will also need its own form of multibuffering, though.
Updated•13 years ago
|
Keywords: fennecnative-betablocker
Comment 2•13 years ago
|
||
I am told that PBOs aren't available on Android.
Keywords: fennecnative-betablocker
Updated•13 years ago
|
Component: Graphics → Canvas: WebGL
OS: Linux → All
QA Contact: thebes → canvas.webgl
Hardware: x86_64 → All
Summary: Use async ReadPixels into a PBO for faster WebGL with non-accel layers with OMTC → Use async ReadPixels into a PBO for faster WebGL with non-accel layers
Reporter | ||
Updated•13 years ago
|
Whiteboard: webgl-next
Updated•13 years ago
|
Updated•12 years ago
|
Updated•11 years ago
|
Severity: normal → enhancement
Comment 3•11 years ago
|
||
Mass tracking-e10s flag change. Filter bugmail on "2be0fcce-e36a-4e2c-aa80-0e3d33eb5406".
tracking-e10s:
--- → +
Updated•11 years ago
|
Comment 4•6 years ago
|
||
It would be great to implement this:
https://jdashg.github.io/misc/async-gpu-downloads.html
Priority: -- → P2
Updated•2 years ago
|
Severity: normal → S3
Comment 5•3 months ago
|
||
Is this still required? If yes, please consider blocking this a newer meta bug.
Flags: needinfo?(jgilbert)
You need to log in
before you can comment on or make changes to this bug.
Description
•