Uttar
10-19-02, 01:45 PM
Hello everyone,
The amazing efficiency of Rivatuner AF optimization made me think. Where the HECK did that power come from?
Then i rethinked about a recent David Kirk quote from an AF article:
"The goal here is to correctly sample the footprint of the source texture that lies within the pixel, including orientation, and perspective. What anisotropic filtering does better than simple trilinear is those last two: orientation and perspective.
Anisotropic is not necessarily a rectangle, since the direction of anisotropy may not be axis aligned. Also, the actual shape may be more of a quadrilateral, due to perspective. The combination of these is very complex - the nearer edges of the quadrilateral will be larger, and thus lower LOD (level of detail) and weighted more. Also, because of the perspective effect, the entire "front half" of the sample is often weighted more than twice as much as the other half.
Consequently, the LOD may change throughout the pixel, by a lot more than 2x
Our anisotropic is a weighted average of up to 8 trilinear samples, along the major axis of anisotropy. So, we may include up to 64 samples, but the samples may be taken from only two MIP maps, and the weighting is nonlinear. The samples are effectively closer together in the part of the pixel that is nearer to the eye.
"
So, could it be that this "optimization" simply means that nVidia tried to see how much faster ATI method is ( which is, in case you didn't read the article, a rectangular shape ) ?
Yes, maybe... But there is another explanation.
This quote seems to suggest that they are always using the best shape ( or a very good one ) . But in very bad cases, that requires a LOT of math power for very little difference.
My theory? In case the case is simply too problematic, they use quadrilateral. Or maybe they even use quadrilaterals everywhere ( and that IS better than ATI method, because that's still more flexible than rectangles! ) .
Another interesting thing is that Rivatuner asks for the "maximum level of anisotropy". Now this is very interesting because David Kirk says their approach may include up to 64 samples.
Would this mean before this optimization, there always was an overhead that the GPU was ready to get 64 samples? Possibly, but that would be very surprising.
However, even if all of those theories are incorrect, i think that this David Kirk quote may make us figure out what this optimization is. Any idea?
Uttar
The amazing efficiency of Rivatuner AF optimization made me think. Where the HECK did that power come from?
Then i rethinked about a recent David Kirk quote from an AF article:
"The goal here is to correctly sample the footprint of the source texture that lies within the pixel, including orientation, and perspective. What anisotropic filtering does better than simple trilinear is those last two: orientation and perspective.
Anisotropic is not necessarily a rectangle, since the direction of anisotropy may not be axis aligned. Also, the actual shape may be more of a quadrilateral, due to perspective. The combination of these is very complex - the nearer edges of the quadrilateral will be larger, and thus lower LOD (level of detail) and weighted more. Also, because of the perspective effect, the entire "front half" of the sample is often weighted more than twice as much as the other half.
Consequently, the LOD may change throughout the pixel, by a lot more than 2x
Our anisotropic is a weighted average of up to 8 trilinear samples, along the major axis of anisotropy. So, we may include up to 64 samples, but the samples may be taken from only two MIP maps, and the weighting is nonlinear. The samples are effectively closer together in the part of the pixel that is nearer to the eye.
"
So, could it be that this "optimization" simply means that nVidia tried to see how much faster ATI method is ( which is, in case you didn't read the article, a rectangular shape ) ?
Yes, maybe... But there is another explanation.
This quote seems to suggest that they are always using the best shape ( or a very good one ) . But in very bad cases, that requires a LOT of math power for very little difference.
My theory? In case the case is simply too problematic, they use quadrilateral. Or maybe they even use quadrilaterals everywhere ( and that IS better than ATI method, because that's still more flexible than rectangles! ) .
Another interesting thing is that Rivatuner asks for the "maximum level of anisotropy". Now this is very interesting because David Kirk says their approach may include up to 64 samples.
Would this mean before this optimization, there always was an overhead that the GPU was ready to get 64 samples? Possibly, but that would be very surprising.
However, even if all of those theories are incorrect, i think that this David Kirk quote may make us figure out what this optimization is. Any idea?
Uttar