Bookmark and Share

Articles: Video

Pages: [ 1 | 2 | 3 ]

3D Image Quality

Besides all the advantages of tile architecture, Kyro II possesses a few more noteworthy abilities, which we are going to highlight now.

Firstly, Kyro II carries out all color calculations and texturing operations with 32bit precision regardless of the graphics mode set or the format of the processed textures (Internal True Color). Sometimes, it allows avoiding quality worsening, for example in 16bit modes when the objects containing transparent textures are laid one over another, some errors may occur. Kyro II is free from this problem, because all the operations are made in a 32bit color mode. A frame is changed to 16bit mode only when a completed part of the image is transferred from the tile buffer to the general frame buffer. Now we will try to illustrate the process we have just described. On the left, you can see screenshots from Unreal Tournament in 16bit and 32bit color modes received from Kyro II, on the right - the shots obtained for GeForce2 MX400:

16bit - Kyro II 16bit - GeForce2
32bit - Kyro II 32bit - GeForce2

With the help of the same Unreal Tournament benchmarks, let us check the quality of dithering in 16bit mode:

16bit - Kyro II 16bit - GeForce2

From these screenshots we can easily deduce that the image quality provided by Kyro II in 16bit modes is undoubtedly its strong point. We guess that 16bit dithering by Kyro II is made with a 4x4 pixel matrix, which generates some kind of typical "grids" in 16bit modes. Dithering by GeForce2 results into repeating 16x16 pixel squares. Although in this case we found no evident quality differences, we liked Kyro II better in dynamic 16bit scenes and GeForce2 in static ones.

The second curious issue concerning Kyro II is the support of full-screen anti-aliasing by means of supersampling. Moreover, Kyro II is smart enough to perform two-sample (2x) horizontal anti-aliasing (2x1), two-sample (2x) vertical anti-aliasing (1x2) and four-sample (2x2 or 4x) anti-aliasing. To compare the quality of full-screen anti-aliasing carried out by Kyro II and its rivals, we would like to offer you some screenshots from Homeworld: Cataclysm shots were made in 800x600x32 mode with enabled supersampling (Hercules 3D Prophet 4500 and NVIDIA GeForce2 MX400 competing):

No Supersampling Supersampling 2x
by GeForce2

Supersampling 1x2
by Kyro II

Supersampling 2x1
by Kyro II

Supersampling 2x2
by Kyro II

Supersampling 4x
by GeForce2

Don't miss the fact that Kyro II implements full-screen anti-aliasing not in the same manner as ordinary graphics accelerators. Say, we enable 2x2 supersampling. In this case the ordinary accelerators will build the image in a 4 times enlarged buffer and then sample, average and transfer the final image to the frame buffer. Kyro II in its turn builds the image tile by tile in the tile buffer, and then, before transferring the image to the frame buffer, reduces the image size sampling and averaging pixel colors in a 2x2 square. Note that for this purpose Kyro II transfers considerably smaller amounts of data along the memory bus, because it doesn't need an enlarged frame buffer and Z-buffer.

Thus we can anticipate that Kyro II will suffer smaller losses by full-screen anti-aliasing than common graphics cards. The results obtained in Quake3 Arena will allow you to assess Kyro II performance with enabled supersampling. The settings remained just as we described in the "Test Methods" section of the article but in this particular case for all the cards we used bi-linear filtering (in the very end of this section we'll explain why):




Notice a curious fact: Kyro II does 2x1 full-screen anti-aliasing a little bit faster than 1x2 anti-aliasing. Perhaps, this slight difference is caused by the peculiarities of the Kyro II core. As for the performance, it is obviously limited by the fillrate but not by the memory bus bandwidth, since the performance falls negligibly when we shift from 16bit to 32bit color mode. GeForce2 GTS has made the most of its comparatively faster texturing speed to show a higher result in 16bit mode, but it fell behind Kyro II in 32bit mode. It seems, that the insufficient graphics memory bus bandwidth choked GeForce2 GTS, just look at a dramatic performance drop by GeForce2 GTS when we passed over from 16bit to 32bit color mode!

Kyro II supports bump mapping by means of EMBM and Dot3 while GeForce2 supports only Dot3. Not so log ago EMBM was a privilege of Matrox's graphics cards only, but nowadays a considerable number of accelerators can support this function and it is very often implemented in modern games. Here are EMBM screenshots taken in 3DMark2001 and Battlezone 2: Combat Commander (with and without EMBM):


EMBM in 3DMark2001

Battlezone2 with EMBM
by Kyro II

Battlezone2 without EMBM

Dot3 bump mapping can be illustrated by 3DMark2001:


Dot3 by Kyro II

Dot3 by GeForce2

Dot3 by Kyro II is partially ill-implemented: by GeForce2 MX this intricate "bun" is lit by two light sources of different colors, while by Kyro II it is lit by only one not color light source. Maybe, it's a drawback of Direct3D-part of Kyro II driver, or poor implementation of Dot3 technology in the core.

Kyro II also supports tri-linear and anisotropic texture filtering. Moreover, the driver allows forcible enabling of these options. In OpenGL you may force enabling anisotropic filtering only, and in Direct3D it can be done with both tri-linear and anisotropic filtering. Forcible enabling works perfectly for both types of filtering in Direct3D, but in OpenGL in Quake3 enabled anisotropic filtering didn't bring any noticeable changes: the performance remained unchanged as well as texture filtering quality. The same thing happened when we launched Unreal Tournament and Homeworld: Cataclysm in OpenGL. Anisotropic filtering began to work only in Serious Sam thanks to the game engine: in OpenGL it supports anisotropic filtering and may need it enabled. The results obtained in Serious Sam show how good Kyro II is at tri-linear and anisotropic texture filtering:

Bi-linear filtering Tri-linear filtering
With mip-levels highlight
Scene fragments

Anisotropic filtering

Anisotropic + Tri-linear
filtering
With mip-levels highlight
Scene fragments

In spite of the troubles encountered in OpenGL, in Direct3D anisotropic filtering worked well. In order to check Kyro II performance when tri-linear and anisotropic filtering were enabled, we resorted to Unreal Tournament:


Tri-linear filtering enabled by Kyro II has hardly caused any noticeable performance drop at low resolutions, because at low resolutions the performance is restricted not by the graphics card, but by the CPU and the system as a whole. At high resolutions we registered a 28% performance decrease. The phenomenon is easy to explain: Kyro II is equipped with only two pixel pipelines (with one texturing unit each).

Anisotropic filtering has proven a too complicated task for Kyro II. When we enabled it at 1600x1200 resolution, the performance dropped 2.5 times. And with anisotropic and tri-linear filtering enabled the performance of Kyro II plunged even deeper. Enabling both: anisotropic and tri-linear texture filtering provides the highest image quality, but at the same time it requires a lot of calculations to be carried out, so two texturing units of Kyro II are obviously not enough to cope with all the calculations. We consulted the registry and alongside with the driver settings we found a mention about a command, which should enable tri-linear approximation - a faster but less thorough way to smoothen the borders between different mip-levels. The option didn't work, however. Perhaps, it is locked in the driver, or the chip itself doesn't support tri-linear approximation at all. We hope that new driver versions for Kyro II will improve the situation in the future.

Now it's high time we took a closer look at the fastness of Kyro II.
 

Pages: [ 1 | 2 | 3 ]

Discussion

Comments currently: 1
Discussion started: 10/16/05 02:52:49 PM
Latest comment: 10/16/05 02:52:49 PM

View comments

You must log in to add comments.

Forgot password? Registration

remember me