pcchen said:
If this "optimization" is acceptable, why shouldn't NVIDIA's shader replacement? And others?
My point is, there will be some special cases I want my textures to be correctly linear interpolated, and I know when I need it. However, ATI forces me to use their "optimization," and rely on an unknown detection method to disable it. ATI does not publish how they detect the texture to disable the optimization (they don't even reveal the fact that the "optimization" exists). Of course, NVIDIA is no better here. But that's not the point. The point is to let the programmer to choose, not to try to hide the fact.
Important point people.....bilinear and trilinear exactly give you the same results when the texture footprint in screen space is a close to match to a particular miplevel..trilinear kicks in and makes a difference only when this foot-print isn't an exact match - but is "in-between" two levels.....So, this in-between two levels thing is decided by what's known as "lod calculation"....So, the lod-calculation part is as the key factor
It is really treading on dangerous grounds if a developer relies on this behaviour heavily - as pointed our elsewhere no 2 implementations have the same lod calculation...
My understanding of the "optimized trilinear" is that you are getting the same exact behaviour as regular trilinear..except that the "window" of when you are in-between mip-levels v/s in-one level is skewed
ATI's technique does this "window skewing" bit more selectively based on the texture content and only does it a tiny amount..Nvidia's technique is a bit all over the place and gets aggressive in app-detect mode.
My point is that whenever the blend happens it happens linearly in all the techniques
Let's stop bickering uselessly about trilinear v/s bilinear please and have an educated discussion...
The real discussion we should be having is what are the positive and negative effects of such a "skew" on image quality.....Anyone with any image processing and filtering background that's lurking around? May be they can shed some light on this
The one positive impact I could think of is that the picture could look more detailed and less fuzzy in some scenarios where close to exact match happens with higher detailed levels...It should also generally help make "pre-filtered" mipmaps to look less blurrier
The cons appear to be a potential for visible mipboundaries and may be some aliasing....both of will be un-noticeable for pre-filtered mipmaps.
the cons will dominate the pros when the "skew factor" starts to increase...a minor skew factor could actually be nice in many cases given how the majority of the content gets generated these days