Anisotropic Filtering

I've talked about Bilinear vs. Bicubic filtering before in the context of 2D images, but bilinear filtering is a key ingredient in 3D graphics, too. When a texture is applied to a polygon, the texture may be scaled up or down to fit, depending on your screen resolution. This is done via bilinear filtering.


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2006/01/anisotropic-filtering.html

Thats nice, but where is the ajax code for mip-mapping? :stuck_out_tongue:

Very nice reading, brings back memories of 3d programming. I wish I had invested more time on that field. Actually suprises me that you dont see more directx .net example/source/stuff around in vb.net/c#. Yes C++ will still be the language of choise for programming 3d games, but since the hardware do so much these days and vb.net/c# is the language of choise for so many, I would expect more 3d reletated releases for the .net platform.

/P

me that you dont see more directx .net example/source/stuff around in vb.net/c#

Well, MS has managed wrappers for DirectX at the developer center:

http://msdn.microsoft.com/directx/

They’ve been through a few revs of the managed wrappers now, and I think they have any performance issues ironed out. There’s at least one shipping 3D game on the market written in .NET 1.1:

http://blogs.msdn.com/tmiller/archive/2004/10/14/242443.aspx

Those FlatOut screenshots are not a correct comparison. There are differences other than the addition of anisotropic filtering.

The shot on the left shows lower resolution textures than the one on the right. (You can see the big chunky texels in the area over the rear wheel.) The right hand one also looks under-filtered to me, which shows more detail but also more aliasing. The white details on the car roof exhibit nasty stair step/rope type artifacts for example.

Those FlatOut screenshots are not a correct comparison. There are differences other than the addition of anisotropic filtering.

Nope-- that is the only difference between the shots.

Nope-- that is the only difference between the shots.

Then anisotropic filtering is also a great way of getting rid of unwanted traffic cones…?

Well, the car position is slightly different in the shots. The car start positions are randomized in FlatOut (eg you all start on the same line in a random left to right order) – so I got it as close as I could.

The only RENDERING difference in the two shots is that one has minimum aniso and one has maximum aniso.

All the things Brian is complaining about are, in fact, due to the differences in anisotropic filtering. Textures at an angle will look “lower resolution”, etc.