Results for glean/orthoPosVLines

Overview

Status: pass
Result: pass

Back to summary

Details

Detail Value
returncode 0
info
Returncode: 0

Errors:


Output:
----------------------------------------------------------------------
This test checks the positioning of unit-width vertical lines
under orthographic projection.	(This is important for apps
that want to use OpenGL for precise 2D drawing.)  It fills in
an entire rectangle with a collection of vertical lines, drawing
adjacent lines with different colors and with blending enabled.
If there are gaps (pixels that are the background color, and
thus haven't been filled), overlaps (pixels that show a blend
of more than one color), or improper edges (pixels around the
edge of the rectangle that haven't been filled, or pixels just
outside the edge that have), then the test fails.

This test generally fails for one of several reasons.  First,
the coordinate transformation process may have an incorrect bias;
this usually will cause a bad edge.  Second, the coordinate
transformation process may round pixel coordinates incorrectly;
this will usually cause gaps and/or overlaps.  Third, the
line rasterization process may not be filling the correct
pixels; this can cause gaps, overlaps, or bad edges.  Fourth,
the OpenGL implementation may not handle the diamond-exit rule
(section 3.4.1 in version 1.2.1 of the OpenGL spec) correctly;
this should cause a bad border or bad top edge.

It can be argued that this test is more strict that the OpenGL
specification requires.  However, it is necessary to be this
strict in order for the results to be useful to app developers
using OpenGL for 2D drawing.

orthoPosVLines:  PASS rgba8, db, z24, s8, win+pmap, id 33
	Immediate-mode vertical lines:  No gaps, overlaps, or incorrect edges.
orthoPosVLines:  PASS rgba8, db, z24, s8, win+pmap, id 34
	Immediate-mode vertical lines:  No gaps, overlaps, or incorrect edges.
orthoPosVLines:  PASS rgba8, z24, win+pmap, id 107
	Immediate-mode vertical lines:  No gaps, overlaps, or incorrect edges.

Back to summary