GameCube 101: Graphics
Learn all about GameCube's graphics chip with insightful quotes from ATI's Greg Buchner.
January 16, 2001
You've seen the demonstrations, and you've heard the developer hype -- GameCube's graphical abilities are astounding. Even when compared to Xbox, (see Malice demo) GameCube is a shining example of great next-generation graphics technology. The people responsible for these technological achievements can be found at Nintendo Co. LTD, Nintendo Technology Development, NOA, ArtX, ATI, NEC, and MoSys to name a few. Many people say that a picture is worth a thousand words, but when one compares still screenshots of next-generation software it's hard to walk away with any appreciation of the technology behind it. In consideration of that, we're bringing you the best breakdown of GameCube's graphics hardware as we can offer. Some of it will be repetition of old news and some of it will be eye-opening news, but hopefully at the very least most of it will be intriguing. We want you to come away with an appreciation for the power, efficiency, and, most of all, balance that encompasses not just GameCube's graphics chip, but the entire system.
Lets start by looking at some of the best looking titles on each respective system: Metal Gear Solid 2, Legend of Zelda, and Malice. Certainly, they all look wonderful and do a great job of showing off the potential of each system. Information on details such as texture usage, polygon performance, and lighting can also be discerned. What is often not understood by the average consumer is the technology behind it and how easy (or hard) it may be to use.
So, what makes the visuals in the pictures above so exceptional? In particular, what lies behind the high-quality graphics in the GameCube (this is IGNcube, after all) Legend of Zelda demo? There's no way to pinpoint some boilling core of power in GameCube because the entire system holds hands to get the performance it does, but if we had to pick the "hottest" spot it would definitely be the graphics chip, codenamed Flipper.
Symbols Chart
NOTE: The block diagram shown above is NOT to scale. Each respective symbol only represents a general layout. eFB: Embedded Frame Buffer
eTM: Embedded Texture Memory
TF: Texture Filtering
TC: Texture Coordinate generation
TEV: Texture Environment
PEC: Unknown, includes motion compensation, data filtering to go outside of chip
C/Z: Color/Z-buffer
RAS0/1: Rasterizing Units 0/1
RAS2: Rasterizing Unit 2
SU: Triangle Setup
CP: Command Processing
DSP: Digital Signal Processor (sound)
NB: "North Bridge"
XF: Transform, geometry calculations
Flipper Specifications
•Developed by primarily ATI, ArtX, NCL, and NTD.
•Manufacturing Process: 0.18 microns NEC Embedded DRAM Process
•Clock Frequency: 202.5MHz
•Embedded RGB Buffer: Approx. 1MB, Sustainable Latency: 5ns (1T-SRAM)
•Embedded Z Buffer: Approx. 1MB, Sustainable Latency: 5ns (1T-SRAM)
•Embedded Texture Cache: Approx. 1MB, Sustainable Latency: 5ns (1T-SRAM)
•Estimated Internal Bandwidth: 20-25GB/second (peak)
•Texture Read Bandwidth: 12.8GB/second (peak)
•Main Memory Bandwidth: 3.2GB/second (peak)
•Color, Z Buffer: Each is 24bits
•Image Processing Function: Fog, subpixel anti-aliasing, HW light x8, alpha blending, virtual texture design, multi-texture mapping/bump/environment mapping, MIPMAP, bilinear filtering, trilinear filtering, anisitropic filtering, real-time texture decompression (S3TC), and more
•Simultaneous textures: 8
•Estimated raw display capability: 90 million polygons per second
•Actual display capability: 6 million to 12 million polygons per second (display capability assuming actual game with complexity model, texture, etc.)
•Other: Real-time decompression of display list, HW motion compensation capability
(The following sound related functions are all incorporated into the system LSI)
•Sound processor: Special 16bit DSP
•Instruction memory: 8KB RAM + 8KB ROM
•Data memory: 8KB RAM + 4KB ROM
•Clock frequency: 101.25mhz
•Minimum number of simultaneously produced sounds: ADPCM: 64ch
•Sampling frequency: 48khz
This is the Flipper chip. Made up of 51 million transistors, it is just under 110mm2 of pure engineering genius. The chip is responsible for creating high-polygon models (the building blocks of 3D), texturing large worlds (the "paint" for the polygons), adding graphical effects ("paint" accents), real-time lighting, and a separate chunk dedicated to the sound, but that's another story. Some of the hardware features that allow this are embedded frame and texture memory, S3 Texture Compression, hardwired filtering effects, and a geometry and lighting unit. By this time anyone who doesn't involve themselves in the video hardware circle is probably getting overwhelmed. As such, lets start slow and try to understand some of the basics of the Flipper chip before moving into the more tech-heavy details.
Laying the Foundation
As is mentioned above, Flipper is composed of 51 million transistors. In essence a transistor is a microscopic gate that opens or closes a circuit via electricity, which is the heart of how computer devices "talk" to each other. In layman's terms open can mean "yes" and closed could mean "no." These transistors compose microprocessors, which is exactly what the Flipper chip is. At it's base, though, the chip is just a very tiny set of aluminum wires. How can you fit 51 million of these "gates" into a 10.5mm (about .4") square? Well, these gates are very tiny because of the way they are carved out in the manufacturing process called fabrication. Flipper is manufactured in a .18 micron process, which is what makes it so small. In comparison the PS2 graphics chip has 43 million transistors and is fabricated in a .25 micron process yielding chip size of 279mm2 -- over twice the size of Flipper. Both chips are slated to be manufactured at smaller sizes as time goes by.
Looking on the Inside
Now that you understand what Flipper is composed of, lets consider some of the components that are part of its architecture. It should be noted that every chip has a different architecture just as houses would. In that sense, Flipper certainly has its share of unique rooms. Some of the big square footage that lies behind its performance is the embedded 1T-SRAM developed by MoSys. ATI's Vice President of Research and Development, Greg Buchner, claims, "If we used DRAM, we would have been able to do a lot less. [1T-SRAM has] much less restrictions and much higher performance for the same clock rate. Everything about it is better." By utilizing this embedded memory developers can keep information close to the graphics chip without having to access outside memory. Using the metaphor of houses again, think of it as storing your personal belongings in your own garage or having to drive down to the local rent-and-store facility. The ability to access that embedded memory can be that much quicker.
Another important part of Flipper's design is the S3 texture compression. There is physical metal found in the chip that decompresses stored textures at a 6:1 ratio. So, while they might take up 20MB of memory, they could theoretically be equivalent to 120MB of textures. The difference is astounding, and more than evident if you watch some of the GameCube demonstrations. Furthermore, because the S3TC is part of the chip and not a software program there is no overhead. Meaning that there's no slowdown in the processing pipeline. In contrast the PlayStation 2 would have to run a software program to try to mock the same process, which would greatly hinder the system's performance. Case in point, GameCube gets huge textures for a very small price. Say goodbye to those blurry N64 graphics and make way for crisp, detailed visuals.
Next one should consider the effects that are applied to those textures. There are a great number of effects that can be used to make objects look shiny, smooth, dirty, bumpy, etc. GameCube's graphics chip has an especially powerful advantage in this area. Not only do some effects come at a small cost in performance, but also others have never been implemented in consumer graphics before. As ATI's Greg Buchner put it, "There's some cool sh-- in this chip." Exactly what that cool stuff is, and how it works is beyond public knowledge. Following we'll offer some insight on some of Flipper's functions including trilinear filtering, anisitropic filtering, subpixel anti-aliasing, multi-texture mapping/bump/environment mapping, virtual texture design, alpha blending, and HW light x8.
•Trilinear Filtering
As you get close to a 3D object it begins to take of more of the screen; therefore, the textures on it take up more of the screen. So it begins to take up more pixels (the tiny squares your screen is made up of) even though it's the same texture. These new pixels that get taken up by the object are "colored" by looking at the four adjacent texels (colored pixels) and blurring them together to create the new texel. Some image quality is lost in the process, but trilinear filtering is a more accurate method than was used in past consoles.
•Anisitropic Filtering
This is the next level of filtering after trilinear filtering. It creates an even more accurate image by obtaining more information from the surrounding textures. While it's still a costly feature on GameCube, it should be utilized by the more talented developers.
•Sub-pixel Anti-aliasing
Still not described in any detail it is assumed to be a more accurate technique of regular anti-aliasing. Regular anti-aliasing "blurs" a texture or line to make it look more smooth. Sub-pixel anti-aliasing is thought to be a method of breaking down the pixels on screen into sub-pixels in memory, resulting in more available "spaces" to anti-alias your line or texture. Greg Buchner offered no solid information but said, "There's a couple of different types of algorithms, or I'd say 10,000 foot level algorithms for taking anti-aliasing, below those you get down to the 1,000 foot level, they start to get different, each of those begins to get different with its different implementations. There's many many ways to try to improve the image quality, there's some novel things that we've done that are on the 10,000 foot level similar to one of the two or three main schemes for doing anti-aliasing. And as we get down to the implementation detail there's some cool stuff that [ATI does which] nobody else does."
•Multi-texture Mapping
GameCube's graphics chip offers the unparalleled ability to apply eight textures simultaneously. As an example a developer could create a shield that applies trilinear filtering, bump-mapping, dirt mapping (to "absorb" light"), transparency, and a number of other techniques. The end result will prove to be far more detailed than a plainly textured object, which can appear flat. Greg Buchner comments on the ease of implementing this in GameCube: "There's two ways you could handle multi-texture. One is make people jump through hoops render things multiple times, pass it through the hardware multiple times, and have to work hard. And there's [the other way] where you make the hardware more autonomous and deal with things for the developer."
•Virtual Texture Design
This is another one of those terms that Nintendo is hiding behind. All we know is that it makes dealing with textures more efficient and easy. Convenient, you might say. Mr. Buchner offers up the comment, "There's a lot of stuff aimed at making the developers job easier in dealing with the textures, in terms of how they have to load them, what they don't have to load ... just making their lives easier. Rather than explicitly loading a texture, like you have to do on some systems before you can use them. The hardware may take care of things for you."
•Alpha-blending
Even the N64 featured this technique, but it would cost you a lot of your fill rate (how fast the chip can put the image on the screen). It is used to make something appear transparent. On GameCube IGNcube has been told that it comes at a significantly low cost in performance. This is why in the Luigi's Mansion demonstration many, many transparent ghosts surround Luigi.
•Hardware Lighting x8
Hardware lighting is just like any other real-time lighting you see in games, but it comes with far less of a hit on the hardware. GameCube can handle eight lights via hardware and still pump out millions and millions of polygons. Even with this many lights the 6-12 million polygon per second number may be conservative. GameCube is that powerful. Buchner says, "This is one of those things where it's more of a performance issue than anything else. In terms of everything that is in Flipper, at least in terms of a graphics point of view, it is a tradeoff. Do you do dedicated gates for a function or do you run it on a general purpose CPU? You could do it all on a CPU and make it easy for people. You could have...a huge program take care of everything for you in software. You could still do that. That would be very easy for the developers, but it would be pretty pitifully slow. This is an area where I'd say it's more for performance issues. If you try to do all of the lighting calculations, all the matrix calculations that are needed for all these lights, if you did that all in the CPU you would chew up so much of the CPU resource."
The Visual Buzz
Everything we've been hearing tells us that GameCube is a beast in the graphics department. In terms of polygon performance even with tons of filters, lighting, AI, and everything else its pushing anywhere from 15-25 million polygons per second. Some developers even say GameCube can push 25-40 million polygons per second in-game depending on the amount of effects used. In the end, though, the number of polygons won't matter as much as how the eye is fooled. Again, we've been hearing that the eye might have trouble discerning between a well-done FMV cut-scene and the in-game visuals. Also, now that Xbox hardware is slowly seeping into the hands of developers IGNcube is being told that GameCube has a greater and greater chance of not only being just as powerful as Xbox, but possibly even more powerful than the Xbox in some areas. As for the PlayStation 2, it's really not even an issue anymore. GameCube is clearly much more powerful than the PS2, even in its first-generation of software.
What one really needs to understand about the GameCube graphics chip is not technical jargon, but rather plain English. The design of the entire system, especially the graphics chip, is intelligent, efficient, and extremely balanced. While many developers fight for performance on a system like the PS2 they'll be able to be express their creative freedom on GameCube. Instead of spending a month trying to implement their basic ideas, they'll spend a week implementing the basic idea they had, and that extra three weeks coming up with new creative ideas. Nintendo's vision for the GameCube was to give developers that creative freedom, and ease them of technical strife. The graphics chip plays perfectly into the hands of this vision.
So as a fan, as a techical guru, or as someone with casual GameCube interest, sit back and enjoy the simple brilliance of GameCube's design. The software is guaranteed to look amazing. All we need to hope for is lots of it.