The year of 2007... The long-awaited Microsoft Windows Vista arrives almost six years after Windows XP. Its radically overhauled model of interaction with computer devices makes it possible to implement a brand new approach to 3D graphics with DirectX 10 API. The main element of this approach is a step towards the unified architecture of modern graphics solutions: the entire line of discrete graphics cards from AMD and NVIDIA has been reoriented to the new products supporting DirectX 10. The first integrated solutions are to arrive in the nearest future. Out of doubt, this contributes to more flexible usage of GPU resources, not only to graphics processing. But our modern 3D corporations have gone a long evolutional way to enter this level.
This series of articles will offer you a tour tracking back the history of 3D graphics companies.
Before we proceed, let's think about the need for devices dedicated to 3D graphics processing. Until the 90s, such computing was up to huge computer systems - some animation frames took days to render. Even if the hardest compromises were made as far as graphics quality and speed were concerned, playing such graphics on a single computer was out of the question. Some of the reasons were the lack of proper software environment for efficient CPU usage as well as peculiarities of its operations: games were required to compute sounds, physics, etc, and processors were designed for universal code, not 3D graphics. The latter rendered CPUs inefficient for computing graphics, the first generation of primitive graphics devices (we'll speak about them below) easily outperforming it manifold.
But even such promising devices had a lot of problems and went flop. Market participants were destined to change.
Approaches to 3D graphics: so good and so different
It looks obvious to us today that there are geometric primitives consisting of polygons (tetrahedrons), textures applied to them (it resembles the process of pitching a tent :), and there are shaders to manage the above elements... But these problems were really pressing at the time, and the answers were not as clear as required.
NVIDIA NV1 had actually become the first 3D accelerator for the mass market. The Diamond Edge3D (based on NV1) launched in 1995 was a sterling multimedia system: its PCB contained sets of logical elements responsible for 2D, 3D, video, and audio. The 3D component consisted of 200 thousand transistors (FYI: the NVIDIA GeForce 8800 GTX contains almost 700 millions of them), which were intended for quad patch geometry models. It was an ambiguous move, considering that the industry had chosen polygonal graphics. Besides, 2D graphics quality couldn't compete with other options at that time, especially in DOS. And its audio quality was mediocre at best. Being quite expensive, it failed to win the market and remained just a museum specimen - the first experiment not only in 3D, but also in creating a generic multimedia device.
Let's return to the old times, when this new class of devices had been just appearing. Year 1996 had become much more progressive for 3D graphics after the NV1's fiasco. Three companies offered their products in this unknown field - PowerVR, Rendition, and 3Dfx. Each of the new products brought its own vision of polygonal 3D graphics. For example, PowerVR stored a geometric image of an object and split the future image into a grid consisting of rectangular tiles. Then the card checked which part of the geometry image would be visible to a user in each tile. After that only visible tiles were processed. It helped save computing resources by not wasting them on invisible surfaces. On the other hand, it resulted in much more complex coding procedures, so it was increasingly difficult to support the product. Later on the company discontinued it support for the first products and its own API.
What concerns Rendition, this company suggested using a 3D accelerator for some operations (transforming and lighting) instead of a CPU. That was why some transistors of the Verite 1000 were used for an additional unit. Its pixel rate was 25 million pixels per second, twice as low as in its main competitor - 3Dfx Voodoo Graphics. It did have a negative effect on its performance. What killed the Verite 1000 was its strange PCI operation: on one hand, the unique data encoding system of the Rendition raised data transfer efficiency to a new level; on the other hand, it limited its compatibility with motherboards (which had to support this function.) The next generation, Rendition Verite 2x00, did not have these problems. However, it was overdue, as the market had been already conquered by the 3Dfx, and its software problems remained. Rendition was not ready for Microsoft DirectX. Besides, its own API Speedy3D had only limited support.
Development and support for proprietary APIs was relevant at dawn of 3D graphics. You can see it, if you examine universal APIs of that time - Microsoft DirectX and SGI OpenGL. It was an embryonic stage per se, when available APIs couldn't satisfy ambitions of chipmakers. Each of them strived after its own common denominator for the entire 3D industry. This desire to create complex individual products was the reason why the plain 3Dfx Voodoo Graphics was the winner.
The first logo of 3Dfx Interactive: you could see this very logo on boxes with the latest 3D games
Breakthrough of Voodoo Graphics - 3D for the masses
3Dfx played reasonably, as the available CPUs had enough computing resources to take up some of the job, for example, to compute geometry. Voodoo Graphics, the first 3Dfx chipset consisting of two processors - PixelFX and TexelFX, was responsible for applying textures and filtering in the first place. That was the main emphasis. That helped achieve much higher fill rates.
Besides, 3Dfx programmers created quite simple API Glide for developers. Despite its simplicity, it turned out to be a convenient tool for developing the first games using 3D acceleration features. As Glide was a closed project, it only strengthened 3Dfx positions, when it started its triumphant procession on the new market: a lion's share of Glide blockbusters cut off avenues of approach for their rivals. The marketing campaign with 3Dfx logos on game boxes was very smart - it quickly associated 3D graphics with 3Dfx in the minds of consumers. So it became one of components of 3Dfx success in much harder years.
We should also mention what 3Dfx did to promote its ready products - chips were installed on a separate card, called a 3D accelerator; it was connected to a main graphics card, which contributed to flexible configuration of a graphics system. OK, this approach had some shortcomings - the daughter card did not improve the quality of a VGA signal. Nevertheless, it was a reasonable compromise that provided consumers with compatibility/configurability and excellent graphics (at the time).
The legendary Diamond Monster 3D - probably the most popular 3D accelerator in 1996-1997. (Photo courtesy of Wikipedia)
Success of 3Dfx in 1996 clearly demonstrated the unavoidable reality: full success awaits a company only if it can promote its promising products, not just design them. Professional teamwork of 3Dfx departments made this company a pioneer in 3D graphics as part and parcel of a modern PC. Voodoo Graphics was the first truly successful 3D accelerator for mass consumers.
Man shall not use 3Dfx alone...
Despite the unprecedented success of 3Dfx and Glide, the old players of the graphics card market were not idle either: the tendency to use graphics acceleration in consumer PCs couldn't be ignored, it had become a survival factor for companies. Nevertheless, the old grands were late, so it was very hard for them to compete with 3Dfx - a number of factors were a serious problem.
Budget solution with good performance for professional 3D Modeling packages - Diamond FireGL 1000 based on a chipset from 3DLabs (this company is part of Creative now).
Firstly, we already noted that API Glide had been closed to third-party GPU manufacturers.
Secondly, 3Dfx competitors had a negligent attitude to supporting DirectX and OpenGL. Do you remember the constant cockalorum with drivers and incompatibilities of the new cards at that time - it did not add popularity to alternative products.
And thirdly, appetites were sometimes inadequate to market realia: Voodoo Graphics was about 200-250 USD or even less, while ATI Rage Pro was above $400. Modest expectations from a raw product, aren't they?
The Rage Pro also had strong points, of course - support for high resolutions and 8 MB of video memory, plus hardware-assisted video acceleration, including the latest MPEG2. Nevertheless, duality of the approach in the Rage Pro (when the 3D component was very expensive, but required only nominally for the above mentioned reasons) did not make this ATI product popular.
That's why those users who needed video support preferred much cheaper ATI Rage/II cards, while 3D features were up to another card. Yep, that very Voodoo Graphics.
A special modification of Matrox Millenium 4MB for Compaq, which merged with Hewlett-Packard not long ago
The question of 2D graphics quality remained, of course. So the new Mystique/Millenium II cards from Matrox, the company that had always paid special attention to this parameter, had been designed for IT professionals and owners of large monitors (17" and higher). The cards offered a high-quality RAMDAC with support for high resolutions. They were also notable for high production quality, as they were manufactured at Matrox plants. Alas, embryonic 3D functions of Mystique/Millenium II were of nominal value, so it was still doomed to work together with the Voodoo Graphics in gaming PCs.
The same destiny was prepared for S3 Virge cards, where 3D bells and whistles were supported only nominally. No, these cards allowed to run some games, if you could break through the non-standard configuration approach. And that was all. Nevertheless, this solution also found its place on the market: unlike ATI or Matrox, S3 products were manufactured by many partners, which raised competition and ensured quick response to market conditions. Low costs and decent graphics features made S3 Virge DX/VX cards very popular at the time. It was supplemented with 3Dfx for a budget gaming system.
NVIDIA on the alert
We should also mention the most serious rival of 3Dfx - RIVA 128, which was then upgraded to RIVA 128zx. The title of the new product from NVIDIA stands for Realtime Interactive Video and Animation. Unlike its competitors, its 3D section was more than decent as far as its characteristics were concerned. 4 MB or 8 MB (for RIVA 128zx with 250MHz RAMDAC and AGP 2x) of fast SDRAM / SGRAM memory helped intensify data exchange with a GPU. But the key peculiarity lied in another thing. The key innovation was in processing two pixels per cycle - quite a logical move, considering that such computations can be distributed. It allowed RIVA 128 to reach the unprecedented peak fill rate of 100 million pixels per second (for comparison, ATI Radeon X850 XT PE has the fill rate of 9.28 billion pixels per second).
ASUS 3DExPlorer V3000 - a popular modification of RIVA 128 with the state-of-the-art AGP bus.
Compared to 50 millions in Voodoo Graphics, NVIDIA achievements looked like a step into a new dimension. However, if the promotion was based on the last part of the phrase, the key word here was "seemed". A very weak OpenGL driver, limited compatibility with applications, as well as incorrect operation did their part - computing potential was strangled by these factors. Even performance in a few fully supported applications was often lower than that a Voodoo card could offer. Besides, RIVA 128 had higher CPU requirements: it required Intel Pentium II for good performance.
That was why only few manufacturers of ready cards decided to base their products on the new NVIDIA solution. For example, RIVA 128/128zx cards were mostly represented by ASUSTeK V3000 and Diamond Multimedia Viper V330 on the Russian market.
Thus, even though Voodoo Graphics was not the most advanced product by the end of 1997, a good combination of its features and API Glide ensured prosperity of 3Dfx in 1997 as well. It laid significant groundwork for several years in advance. Nevertheless, even the market leader failed to come up with a sterling 2D/3D product.
Spoil after you spin
Voodoo Rush was the first attempt of 3Dfx to combine 2D and 3D components on a single card: the PCB contained Voodoo Graphics chips as well as a separate chip for 2D graphics output. You might have already guessed that it was a trojan approach: the 2D component of mediocre quality was actively using card's resources, which were also accessible to Voodoo Graphics. It certainly affected the overall performance of this solution, which was lower than in a regular daughter card without this doubtful "makeweight". Moreover, combining 2D and 3D sections required to overhaul the driver. It resulted in limited compatibility of Voodoo Rush with applications written for Voodoo Graphics. No wonder that the product was not popular. So the task of designing an all-purpose multimedia product responsible for video output to a display remained a pressing issue.
3Dfx's failed attempt to add 2D graphics from Alliance Semiconductor to Voodoo Graphics. The card was made by InnoVision Multimedia.
How this problem was solved and whether it was solved in 1998-1999 will be covered in the next article. It will also dwell on 3Dfx dynamics that had started so well in 1996-1997. Besides, we'll see how the grands of 2D cards (ATI, Matrox, and S3) adapted to the 3D market.
And here is a complete table of old GPUs specifications.
The author expresses gratitude to
for the idea of this article
and the inspiration to write it.
Mikhail Proshletsov (firstname.lastname@example.org)
October 5, 2007
Write a comment below. No registration needed!