Closed
Bug 646383
Opened 15 years ago
Closed 7 years ago
WebGL Canvas tearing
Categories
(Core :: Graphics: CanvasWebGL, defect)
Tracking
()
RESOLVED
WONTFIX
People
(Reporter: callow.mark, Unassigned)
References
()
Details
(Whiteboard: webgl-correctness)
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:2.0) Gecko/20100101 Firefox/4.0
Build Identifier: Mozilla/5.0 (Windows NT 5.1; rv:2.0) Gecko/20100101 Firefox/4.0
View the spinning cube at the above URL. Watch for a minute or so and observe all the shakes and shimmers. These are classic symptoms of the 'front buffer' being updated from the 'back buffer' before the application has finished drawing the frame.
There are no shakes and shimmers in Chrome running on the same PC which has an NVIDIA Quadra FX 3450/4000 SDI with driver version 6.14.12.5981 (aka 259.81). The WebGL Renderer is reported as
"NVIDIA Corporation -- Quadro FX 3450/4000 SDI/PCI/SSE2 -- 2.1.2"
webgl.prefer-native-gl is false. webgl.verbose is true.
Reproducible: Always
Steps to Reproduce:
1. Visit the above URL and watch the animation.
Comment 1•15 years ago
|
||
I see the glitches too, on Mac. Benoit, roc, any idea what's going on here?
Status: UNCONFIRMED → NEW
Ever confirmed: true
Comment 2•15 years ago
|
||
The first weird thing is:
> "NVIDIA Corporation -- Quadro FX 3450/4000 SDI/PCI/SSE2 -- 2.1.2"
>
> webgl.prefer-native-gl is false.
So it's using the OpenGL driver instead of ANGLE, despite prefer-native-gl being false.
| Reporter | ||
Comment 3•15 years ago
|
||
Re: comment #2, I thought that was strange too.
In the old days of CRTs these symptoms were also an indication of the 'front buffer' being updated while the CRT was scanning the buffer, i.e. outside of the vertical blanking interval. Not sure how that applies in the world of LCDs.
Updated•14 years ago
|
QA Contact: canvas.webgl → bjacob
Comment 4•14 years ago
|
||
The phenomenon in comment 2 could well be explained by bug 713369 comment 35.
Comment 5•14 years ago
|
||
I cannot test winXP, but since d3d9 only uses readback, this should absolutely not be happening. If this can be repro'd, this is likely an error in the compositing bridge and/or d3d9 layers.
| Reporter | ||
Comment 6•13 years ago
|
||
I have found another example where tearing occurs:
http://www.atmind.nl/webgl/marchingpath.html
It is especially noticeable on the pillars.
This is happening in Firefox 22 on Windows XP. D3D compositing is enabled according to about:config. All layers.* config items are at their default settings as are the webgl.* items. It works fine in Firefox 21 on MacOS X 10.7.5. I'll try on Windows 7 later and report back.
The GPU info from about.support is: (You need to make it easier to copy the GPU info into a bug report; I had to reformat everything below to make it readable.) Note that the GPU has changed since I initially filed this bug.
Adapter Description: ATI FirePro V7800 (FireGL)
Adapter Drivers: ati2dvag
Adapter RAM: Unknown
Device ID: 0x6889
DirectWrite Enabled: false (0.0.0.0)
Driver Date: 9-2-2012
Driver Version: 8.982.8.1000
GPU #2 Active: false
GPU Accelerated Windows: 1/1 Direct3D 9
Vendor ID: 0x1002
WebGL Renderer: Google Inc. -- ANGLE (ATI FirePro V7800 (FireGL))
AzureCanvasBackend: skia
AzureContentBackend: none
AzureFallbackCanvasBackend: cairo
Summary: Canvas is updated during WebGL frame → WebGL Canvas tearing
Comment 7•13 years ago
|
||
Interesting. It doesn't repro for me on Win7+FF24+NV, but that's a number of different variables. I'll try FF22 tomorrow. Can you try a recent version of Nightly?
Flags: needinfo?(callow.mark)
| Reporter | ||
Comment 8•13 years ago
|
||
It happens in Nightly FF24a1 on Windows XP.
It does not happen in FF21 on Windows 7 running natively on D3D10/AMD nor on Windows 7 running on a VM, which supports only D3D9, hosted on the same machine. So it looks like the problem is related to Windows XP.
The Nightly installation is unacceptable for something billed as "for testing only". It took over from FF22 as my default browser. I'll be filing another bug about that.
Flags: needinfo?(callow.mark)
This is unlikely to repro on Win7 or Win8 -- on both 7 and 8, the DWM (which you can disable on 7, but not on 8) will force vsync for redraws. On XP, we don't have any vsync support, and thus are very likely to get tearing.
Chrome, I think, -does- do vsync for its own compositing via ANGLE. We'll get there soon enough, but we need OMTC I think.
Updated•12 years ago
|
Whiteboard: webgl-correctness
Comment 10•7 years ago
|
||
XP is WONTFIX
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•