|
From: Julian F. <jul...@ne...> - 2001-08-27 22:52:01
|
Norman Vine wrote: > > To exploit this means we need to determine the furthest > point in each tile from the tile's center point and then > scale it to be 2**23 No. You are thinking of integer (or maybe fixed-point) arithmetic. We are using floating-point arithmetic, which does the scaling automatically so that there are 23 bits of precision whatever the magnitude of numbers. That's what the 8-bit exponent field does. Anyway, as I see it the point is that in the final conversion from a floating-point screen position (of a vertex) to an integer screen position, whatever the precision, there can be an off-by-one rounding error if the floating-point number is not IDENTICAL. (The precision determines how often this occurs. With 23-bit precision it happens often enough for many people to notice it quite easily.) If the graphics card is doing "anti-aliasing" then it does not do that final conversion to an integer pixel position. Instead it calculates a partial intensity, either directly from the floating-point position or by sub-sampling the pixel (drawing the polygon onto a 2x2 or 3x3 or 4x4 array of sub-pixels and then averaging them). Maybe this is why some people see the aliasing artifact and others don't. On my GeForce 256 DDR/DVI at 1152x864 resolution I had not noticed the artifacts but when I took a look just now, I could see the white dotted lines flickering occasionally along the edges of runways and along tile boundaries. I can choose among: - Allow applications to control the antialiasing mode - Manually select the antialiasing mode: Off (no antialiasing) - Manually select the antialiasing mode: 2x - Manually select the antialiasing mode: 4x and I can see the difference. If I look at a tile boundary with anti-aliasing off, the artifact looks something like the picture that someone posted (http://gwmostreetnet.kircpe.cableone.net/tmp/fgfs-screen-001.png), flickering because it changes completely from frame to frame, sometimes with more or fewer dots, often disappearing entirely for a fraction of a second. With "2x" (which I guess means 2x2 sub-sampling) I get fewer dots and with "4x", even fewer. But some are still there. It does not smooth them out in the way that I was hoping it would. - Julian |