Closed Bug 1209022 Opened 9 years ago Closed 9 years ago

WebGL ANGLE depth buffers don't work very well anymore with antialiasing

Categories

(Core :: Graphics: CanvasWebGL, defect)

44 Branch
x86_64
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla44
Tracking Status
firefox43 --- unaffected
firefox44 + fixed

People

(Reporter: newsmails, Assigned: jgilbert)

References

Details

(Keywords: regression)

Attachments

(3 files)

User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:44.0) Gecko/20100101 Firefox/44.0
Build ID: 20150927030300

Steps to reproduce:

Open this link with firefox nightly 44.0a1 (2015-09-27) :
http://threejs.org/examples/#webgl_geometries

I can not say since which version of firefox nightly it no more works.


Actual results:

Geometries are drawn in a webgl view.
But we can see INSIDE the objects.


Expected results:

As the objects are closed and opaque we should not see inside.

The same link works well with seamonkey 2.38
OS: Unspecified → Windows 7
Hardware: Unspecified → x86_64
[Tracking Requested - why for this release]:

Regression window:
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=b0d7f0fd067c181f0d7e51e59c9caadfa8664513&tochange=0cecdec0f6e1

Regressed by: 0cecdec0f6e1	Jeff Gilbert — Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel
Blocks: 1191042
Status: UNCONFIRMED → NEW
Component: Untriaged → Canvas: WebGL
Ever confirmed: true
Flags: needinfo?(jgilbert)
Keywords: regression
Product: Firefox → Core
Can you create a screenshot of what this looks like?
Flags: needinfo?(alertesmails)
Looks like we're not getting a proper depth buffer.
Attached image screenshots
Alice was quicker...
Flags: needinfo?(alertesmails)
Summary: Firefox nightly - Threejs - Bad geometry rendering → WebGL ANGLE depth buffers don't work very well anymore
It seems like the combination of antialiasing and depth buffers is what breaks
Summary: WebGL ANGLE depth buffers don't work very well anymore → WebGL ANGLE depth buffers don't work very well anymore with antialiasing
And it seems like antialiasing is also now broken.
Assignee: nobody → jgilbert
Flags: needinfo?(jgilbert)
Attachment #8666996 - Flags: review?(jmuizelaar) → review+
Status: NEW → ASSIGNED
Note that this will cause us to regress the ill-gotten gains from bug 1191042. Ignore webgl-terrain Talos regressions up to 25%.
(In reply to Jeff Gilbert [:jgilbert] from comment #11)
> Note that this will cause us to regress the ill-gotten gains from bug
> 1191042. Ignore webgl-terrain Talos regressions up to 25%.

Interesting note, after the "regression" from this bug, it actually ends up slightly better than before bug 1191042 landed.

E.g.
http://graphs.mozilla.org/graph.html#tests=[[325,131,45],[325,132,45]]&sel=1443035058173.2576,1443467488291.4902,16.964285714285715,23.214285714285715&displayrange=7&datatype=geo
https://hg.mozilla.org/mozilla-central/rev/b85067b9554f
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla44
Can we make a test that would have caught this in the future?
I made an effort to create a test, but have so far failed. The newer conformance tests caught this on jgilbert's machine but not mine for some reason.
(In reply to Jeff Muizelaar [:jrmuizel] from comment #16)
> I made an effort to create a test, but have so far failed. The newer
> conformance tests caught this on jgilbert's machine but not mine for some
> reason.

I can take this on.
(In reply to Vladimir Vukicevic [:vlad] [:vladv] from comment #15)
> Can we make a test that would have caught this in the future?

But did get caught, at least from performance point of view:

(In reply to Jeff Gilbert [:jgilbert] from bug 1191042 comment 45)
> So this is causing a ton of unexpected talos improvements for webgl-terrain
> on Windows:
> (Improvement) Mozilla-Inbound-Non-PGO - WEBGL Terrain - WINNT 5.1 (ix) - 6.53%
> (Improvement) Mozilla-Inbound-Non-PGO - WEBGL Terrain - WINNT 5.1 (e10s) - 6.46%
> (Improvement) Mozilla-Inbound-Non-PGO - WEBGL Terrain - WINNT 6.1 (ix) - 16.9%
> (Improvement) Mozilla-Inbound-Non-PGO - WEBGL Terrain - WINNT 6.1 (ix) (e10s) - 18.8%
> (Improvement) Mozilla-Inbound-Non-PGO - WEBGL Terrain - WINNT 6.2 x64 - 23.2%
> (Improvement) Mozilla-Inbound-Non-PGO - WEBGL Terrain - WINNT 6.2 x64 (e10s) - 24.8%

Either looking at the graphs or asking help from jmaher or myself to understand the unexpected improvements better, one would have seen that from the 4 subtests (all combinations of alpha and AA) e.g. on win8 64, both the subtests which include AA have improved by ~40%, which might be enough to raise suspicion that something is fishy with AA on Windows...

https://treeherder.mozilla.org/perf.html#/comparesubtest?originalProject=mozilla-central&originalRevision=e44ee5f26791&newProject=mozilla-central&newRevision=6256ec9113c1&originalSignature=21e9a798ac67283152eca292da02ac66c4ad2753&newSignature=21e9a798ac67283152eca292da02ac66c4ad2753
I assume this is backing out the unexpected improvements?
(In reply to Joel Maher (:jmaher) from comment #19)
> I assume this is backing out the unexpected improvements?

Yes. In fixing the bug, the spurious improvements are gone again.
Tracked since this is a noticeable regression in 44.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: