<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [llvmpipe] piglit gl-1.4-polygon-offset regression"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=71199#c6">Comment # 6</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [llvmpipe] piglit gl-1.4-polygon-offset regression"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=71199">bug 71199</a>
              from <span class="vcard"><a class="email" href="mailto:laura@jlekstrand.net" title="Laura Ekstrand <laura@jlekstrand.net>"> <span class="fn">Laura Ekstrand</span></a>
</span></b>
        <pre>I recently ported this test from Glean to Piglit, and I took another look at it
just now.  From my understanding, I think the logic of the test is correct, but
perhaps you are correct that the implementation is touchy because of numerical
precision issues.

I found that the terms "ideal" and "actual" may be confusing for the purposes
of this discussion.  "Actual" is the implementation-specific definition of one
unit used in the driver's PolygonOffset.  This is discussed in the OpenGL 4.5
core spec (Oct. 30, 2014) in section 14.6.5.  It's supposed to be derived from
the depth buffer precision, but I suppose after looking at the spec that it's
not always guaranteed to be.

"Ideal" is found by experimentation and depends on the whole OpenGL experience;
driver, hardware, depth buffer, etc.  The original authors of this test are
doing a complicated set of binary searches to converge on a numerical solution.
 There may be some numerical instability here.

The output of the test shown above indicates that the llvmpipe driver is
providing a near plane actual mrd that is about half of what its OpenGL context
can actually provide ("ideal" mrd).  In other words, one unit of offset in a
call to glPolygonOffset will not provide enough separation to say, draw a decal
on top of a plane wing without some stitching (plane wing showing through).  A
user would have to use a value of two.

I may be missing something here.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>