6 vertex shaders while only being equipped with 2 quads. As such, this chip was obviously designed for a heavier geometry load than texturing, perhaps being tailored for a role as a FireGL chip. RV410 also significantly outgunned NVIDIA's GeForce 6600GT (3 vertex shaders) on geometry throughput. With R420's and RV410's 6 vertex shaders combined with higher clock speeds than the previous generation, ATI was able to more than double the geometry processing capability of 9800XT. Although the R420-based chips are fundamentally similar to R300-based cores, ATI did tweak and enhance the pixel shader units for more flexibility. A new pixel shader version (PS2.b) allowed slightly greater shader program flexibility than plain PS2.0, but was still shy of full PS3.0 capabilities. This new revision to PS2.0 increased the maximum number of instructions and registers available to pixel shader programs. ATI revealed Temporal Anti-Aliasing, a new anti-aliasing technology their chips were capable of. By taking advantage of the frame-to-eye effects of a framerate higher than 60 frame/s, the GPU is able to better smooth aliased edges by rotating the anti-aliasing sampling pattern between frames. A 2X software setting became perceptively equivalent to 4X. Unfortunately, it required the system to be able to maintain at least 60 frame/s or temporal anti-aliasing would cause a noticeable flickering, because the user would be able to see the alternating AA patterns. If the framerate could not be maintained, the driver will disable Temporal AA. However, in games which this performance level could be maintained, Temporal AA was a nice addition to ATI's excellent anti-aliasing options. Note, ATI's "Temporal AA" was actually a temporal dithering filter for spatial AA, not de facto temporal anti-aliasing (which must involve a controlled blending of the temporal subsamples from consecutive screens). Another notable addition to the core was a new kind of normal map compression, dubbed "3Dc". Similar to how texture compression had been part of the Direct3D specification for years and was used for compressing regular textures, normal map compression compacted this new type of surface detail layer. Because DirectX Texture Compression (DXTC) was block-based and not designed for a normal map's different data properties, a new compression method was needed to prevent loss of detail and other artifacting. 3Dc was based on a modified DXT5 mode, which in fact was a fallback option for hardware not supporting 3Dc. Software making heavy use of normal mapping could gain a