| Summary: | [965] GL smooth wide points drawn as squares | ||
|---|---|---|---|
| Product: | Mesa | Reporter: | WuNian <nian.wu> |
| Component: | Drivers/DRI/i965 | Assignee: | haihao <haihao.xiang> |
| Status: | VERIFIED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | medium | CC: | mesa-dev |
| Version: | git | ||
| Hardware: | Other | ||
| OS: | Linux (All) | ||
| Whiteboard: | |||
| i915 platform: | i915 features: | ||
| Attachments: | test case | ||
|
Description
WuNian
2007-05-13 23:32:29 UTC
Created attachment 9960 [details]
test case
The test case draws a point which size is 3. The result is 3x3 region is colorful with same color. Other pixels are not colored.
Looks OK here w/ 6.5.3 and git/master. You're using the software x11 driver, and not a hardware driver, right? The program prints: size range: 1.000000 20.000000; size step: 0.100000 draw pixel at (0, 0): 0.000000 draw pixel at (0, 1): 0.000000 draw pixel at (0, 2): 0.000000 draw pixel at (0, 3): 0.000000 draw pixel at (0, 4): 0.000000 draw pixel at (1, 0): 0.000000 draw pixel at (1, 1): 0.674510 draw pixel at (1, 2): 0.909804 draw pixel at (1, 3): 0.674510 draw pixel at (1, 4): 0.000000 draw pixel at (2, 0): 0.000000 draw pixel at (2, 1): 0.909804 draw pixel at (2, 2): 1.000000 draw pixel at (2, 3): 0.909804 draw pixel at (2, 4): 0.203922 draw pixel at (3, 0): 0.000000 draw pixel at (3, 1): 0.674510 draw pixel at (3, 2): 0.909804 draw pixel at (3, 3): 0.674510 draw pixel at (3, 4): 0.000000 draw pixel at (4, 0): 0.000000 draw pixel at (4, 1): 0.000000 draw pixel at (4, 2): 0.203922 This bug only exists with 965 driver. Changed component to i965. The bug also exists with i915 driver now. With i915 driver, the output of the test case is: size range: 1.000000 255.000000; size step: 1.000000 draw pixel at (0, 0): 0.000000 draw pixel at (0, 1): 0.000000 draw pixel at (0, 2): 0.000000 draw pixel at (0, 3): 0.000000 draw pixel at (0, 4): 0.000000 draw pixel at (1, 0): 0.000000 draw pixel at (1, 1): 0.000000 draw pixel at (1, 2): 0.000000 draw pixel at (1, 3): 0.000000 draw pixel at (1, 4): 0.000000 draw pixel at (2, 0): 0.000000 draw pixel at (2, 1): 0.000000 draw pixel at (2, 2): 0.000000 draw pixel at (2, 3): 0.000000 draw pixel at (2, 4): 0.000000 draw pixel at (3, 0): 0.000000 draw pixel at (3, 1): 0.000000 draw pixel at (3, 2): 0.000000 draw pixel at (3, 3): 0.000000 draw pixel at (3, 4): 0.000000 draw pixel at (4, 0): 0.000000 draw pixel at (4, 1): 0.000000 draw pixel at (4, 2): 0.000000 draw pixel at (4, 3): 0.000000 draw pixel at (4, 4): 0.000000 Not speaking directly of i915/i965, but typical hardware just can't support this natively. Solutions would be to try to turn it into a point sprite with a alpha texture attached, decompose the point into several triangles, use swrast or just not announce support for large antialiased point sizes. I'm not sure where the maximum supported size of 3 comes from. Maybe that's the maximum where it's still ok to draw a round point as a square since the error is still in the sub-pixel range? Set a variable INTEL_STRICT_CONFORMANCE=1 in your environment. After I set INTEL_STRICT_CONFORMANCE=1, there is nothing to be drawn. All of the pixels are zero. Soft render is OK. fixed in mesa bff94a91c6852157a8251652cb61dc699cd8e4f1 verified. Thanks. Mass version move, cvs -> git |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.