New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 815206 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Compat



Sign in to add a comment

GLSL bug: texture MIPmap

Reported by fabrice....@gmail.com, Feb 23 2018

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36

Example URL:
https://www.shadertoy.com/view/XdtczB

Steps to reproduce the problem:
1. pickup shader color value with your favorite tool.
2. compare value obtained with Angle vs OpenGl
3. option: compare with true texture average (e.g. with gimp. #if 0 to show the texture.)

What is the expected behavior?
texture is 256x256 uniform color noise. Theoretical average is 127.5, real average is 127.16, 127.16, 127.55.
But ultimate MIPmap level is  123, 123, 124 on Windows/Angle and 126, 126, 127 on OpenGL (either windows or linux).

What went wrong?
Bias on texture average (MIPmap0), small on OpenGL but quite larger on Angle.
MIPmap computation by 8bits cascading yields imprecisions, but 3.6 * more in Angle for some strange reason.

Does it occur on multiple sites: N/A

Is it a problem with a plugin? No 

Did this work before? N/A 

Does this work in other browsers? No
 Firefox

Chrome version: 62.0.3202.94  Channel: n/a
OS Version: 
Flash Version: Shockwave Flash 28.0 r0

More that 3% relative error can cause thresholding and bias issues (e.g. when MIPmap0 is used to normalize the texture values).

May somebody please set the flags :	
Blink>WebGL
Internals>GPU>ANGLE
? thanks !
 
Components: Internals>GPU>ANGLE Blink>WebGL
Labels: Needs-Milestone
Cc: kbr@chromium.org cwallez@chromium.org
Owner: geoffl...@chromium.org
Adding a few people for help with triage regarding ANGLE/WebGL.
I'm not surprised that there are some cascading errors in our mipmap computation, when generating mipmaps we only look at the previous mipmap level and do simple averaging.  I believe this is within spec and would take a lot of work to use fancier algorithms.
Status: Assigned (was: Unconfirmed)
Is this WontFix then?

Comment 6 by zmo@chromium.org, Feb 26 2018

Status: WontFix (was: Assigned)
Yes, I think we discussed this over during an ANGLE meeting or WebGL working group meeting and the conclusion is Chrome won't do anything here unless the spec changes. If an app cares about mipmap quality, they can always manually generate each level on the client side.
The problem is not the approximation, which is expected.
The problem is that the amount of error is very different depending whether OpenGL or Angle/D3D is used.

Comment 8 by zmo@chromium.org, Feb 26 2018

This is the difference between two drivers, or the difference between two GPUs.

As far as the behavior is spec compliant, there will be no action taken on our side.

Sign in to add a comment