Antialiasing options would be nice

Make suggestions for improving one of the best games on the net!
Post Reply
Tankie
Private First Class
Private First Class
Posts: 21
Joined: Tue Jul 19, 2005 12:04 am

Antialiasing options would be nice

Post by Tankie »

There is an option for anisotropic filtering, but not antialiasing.

Are there plans to release a future version with the antialiasing option?
User avatar
Saber
Private First Class
Private First Class
Posts: 207
Joined: Tue Nov 01, 2005 9:27 pm
Location: ¨¨¨¨¨

Post by Saber »

What's the anisotropic for?
User avatar
BinarySpike
Corporal
Corporal
Posts: 735
Joined: Mon Mar 28, 2005 11:58 pm
Contact:

Re: Antialiasing options would be nice

Post by BinarySpike »

Tankie wrote:There is an option for anisotropic filtering, but not antialiasing.

Are there plans to release a future version with the antialiasing option?
It's called Blending.




And about anistropic... that's a texture filtering only supported on latter video cards. Old vidoe cards, like mine, don't support it.

*thinks it has something to do with fog and textures... not sure though*
trepan
Dev Wizard
Dev Wizard
Posts: 704
Joined: Fri Feb 21, 2003 7:50 pm

Post by trepan »

BinarySpike:

Anti-aliasing is not "blending".

Rather then demonstrating your ignorance (and potentially confusing
the unwary), don't post next time you know nothing about a subject.

P.S.

The anisotropic filtering option does require a decent
video card (not that recent, my old GeForce3 supported it).
It also requires your bzflag client to be compiled with the
GLEW library.

Anisotropic filtering makes off-normal surfaces (w.r.t. your view),
look sharper. I suggest searching the web if a more rigorous
definition is desired.
Tankie
Private First Class
Private First Class
Posts: 21
Joined: Tue Jul 19, 2005 12:04 am

Post by Tankie »

Yes, I was aware of what anisotropic filtering was. I mentioned it just because anisotropic and antialiasing filtering are the two most common performance enhancements. And having anisotropic filtering adjustment, without antialiasing options seems unusual.

Adjusting the antialiasing through the game might be better than doing it through the videocard software in some cases.
User avatar
Sky King
Private First Class
Private First Class
Posts: 166
Joined: Mon Jun 05, 2006 8:07 pm
Location: Twin Cities, Minnesota, USA

Post by Sky King »

trepan wrote:BinarySpike:

Anti-aliasing is not "blending".

Rather then demonstrating your ignorance (and potentially confusing
the unwary), don't post next time you know nothing about a subject.
Am I missing something? The textbook definition of antialiaising would be the reduction of artifacts left behind as a result of rendering a vector image into pixels, or as the result of downsampling an image from a higher resolution to a lower one. In more common computer practice, anti-aliasing is simply the color-value smoothing or "tweening" of contrast transitions in such a way that graphics appear smoother on a device (such as a printer or screen) than the native resolution of the device.

I agree that technically, the blending and quality settings are not specifically anti-aliasing settings, but, have the single largest effect on whether pixelization is accepted or improved, so I'm not sure it warrants hammering the previous poster. Given the most common lay-user definition of anti-aliasing, he was in the ball park.

I am not a BZ developer, but this is an area where I do have some expertise. I suspect that upon a little research, you will find that the mipmap texture mapping function implicitly reduces the aliasing of an image resampling to a degree that it is often relied upon as the only anti-aliasing applied. Many programs that rely on the OpenGL mipmap do not use any other anti-aliasing.

Thus, if you want to adjust the level of anti-aliasing that occurs, you have to adjust the texture setting to one of the four progressive mipmap qualities, or turn mipmapping off.


BTW, for those curious about anisotropic filtering... this is very often associated with fog or transparency, but actually has nothing to do with that.

Anisotropic rendering is non-linear rendering... The net result, which completely hides how it technically works, is:

If I soften an image with anti-aliasing or mipmapping, the image has a nice, smooth, non-pixelated appearance on screen. However, that smoothing may actually smooth out tiny details I wanted to see (like a distant tank in LaserMania). With anisotropic filtering, a 3D graphics card takes into consideration how far away from you the object is... if it is near, it gives it a smoother appearance at the cost of a little detail. If it is far away, it retains sharpness to avoid losing what little detail is left. In other words, pretty much what you want in BZ.

However, anisotropic filtering is GPU and memory intensive, and thus, there is a frame rate penalty with many cards. I notice no difference in play quality with anisotroppic on or off, so I keep it off.
User avatar
who123
Private First Class
Private First Class
Posts: 27
Joined: Sat Jul 23, 2005 8:42 pm

Post by who123 »

ok seems to be an issue of what anti-aliasing is. Anti ailiasing basically renders another layer on the same image where by it applies 50% transparent pixels around the vector objects edge on screen, so the end effect it looks smooth.

what i dont know is the grades of antialiasing

my g-force 6600 can do grades from 2x,2xQ, 4x, 4xQ, 6x, 6xQ, and 8x, and 8xQ
Image
User avatar
Tropican8
Private First Class
Private First Class
Posts: 312
Joined: Fri Mar 18, 2005 11:51 pm
Location: As close to the grove as you can get

Post by Tropican8 »

who123 wrote:ok seems to be an issue of what anti-aliasing is. Anti ailiasing basically renders another layer on the same image where by it applies 50% transparent pixels around the vector objects edge on screen, so the end effect it looks smooth.

what i dont know is the grades of antialiasing

my g-force 6600 can do grades from 2x,2xQ, 4x, 4xQ, 6x, 6xQ, and 8x, and 8xQ
Antialiasing isn't that smart, at least not FSAA that we use in games. Most video cards do it through a method called oversampling, which more or less involves rendering the datapoints of the image (usually the whole thing) a certain number of times larger than your target resolution. The image is then scaled down to fit your resolution. The "Q"s in NVidia's settings I *think* refer to alternate (in this case higher) numbers of taps you may use.

I could be wrong about all of that, but if I am someone please correct me because I would like to know :)

By the way AA in BZFlag really seems to distort text through NVidia's drivers, dunno if it does that everywhere.
User avatar
Sky King
Private First Class
Private First Class
Posts: 166
Joined: Mon Jun 05, 2006 8:07 pm
Location: Twin Cities, Minnesota, USA

Post by Sky King »

who123 wrote:what i dont know is the grades of antialiasing

my g-force 6600 can do grades from 2x,2xQ, 4x, 4xQ, 6x, 6xQ, and 8x, and 8xQ
This gets back to what I was saying before, about how the MIPMAP function within the texture option settings implicitly antialiases the image. For instance, the brick wall texture is stored in the original source file at 256x256 pixel resolution--which is actually twice the resolution that will be used on screen.

When the program loads up your video card, it gives it that source file, and your video card creates its own downsamplings of 128x128, 64x64, 32x32, 16x16, 8x8, etc., and stores them in memory.

Well, guess what... those downsampled images in memory are antialiased versions of the original image... and that antialiasing turns out to be:

128: 2x
64: 4x
32: 8x
etc...

As you drive around, your graphics card decides which of these downsampled images most closely matches the size you need on screen... higher res for walls that are closer to you, lower res for walls that are further away. And thus, as you drive around, you are seeing an image that has little areas each of which may be 2x, 4x, or 8x antialiased. As far as I can tell in BZ, you always have a minimum of 2x antialiasing.

With anisotropic filtering turned on, your card also pre-calculates and stores non-linear downsamples as well, so that you might also store 128x64, 128x32, 128x16, etc... There's many more combinations to pre-store, and thus, this requires much more memory. (This isn't much of a challenge for most cards as BZ has relatively few textures to store. BZ typicaly requires about 200K to store a MIPMAP for each texture file, but may need 1 or 2 MB to store an anisotropic set of MIPMAPs per texture file.)

The idea is that in 3D rendering, surfaces often have a depth perspective, such as a wall that angles away from you, and so squares of textures may not be as close to what's needed as rectangles of textures. The problem is this blending of these images creates just enough bluriness to make fine details harder to see on distant objects. Part of the function of anisotropic filtering is for your graphics card to determine how small or how far away a texture is, and sharpen the details (by reducing this blending, or in effect, reducing antialiasing) so that fine details are not lost.
Post Reply