About S3TC
Written: 4/23/99
Author: tapped
The Question:
Since the release of their Savage3D, S3 has
touted the chipset's one feature that seemingly gave it an edge over its competition:
S3TC, or S3 texture compression. S3 explains S3TC as a means by which compressed (and
therefore small) textures are transferred over the bus until they are decompressed
"on the fly," so that the memory bandwidth which would otherwise be hogged by
large textures is saved. Does it work? Well, to be honest, I've never even seen a Savage3D
in action, though I've seen plenty of screenshots depicting the benefits of S3TC. From
such screenshots, and a few benchmarks, I'd say it does; because the textures are huge
once decompressed (up to 2048x2048), the detail that can be achieved is pretty darn
amazing. In fact, S3 has used S3TC to cram photorealistic textures in Epic's shooter,
Unreal.
Of course, such detailed textures are quite
large, so the Savage3D must be able to display textures that are up to 2048x2048 in size,
which is an impressive feat; however, the ability to display textures of this size isn't
exclusive to the Savage3D. Other cards, such as Matrox's G200, ATi's Rage128, and NVIDIA's
RIVA TNT, are all capable of rendering large textures. This got me thinking, "Why is
it then that S3 feels its S3TC is so special?" Then I remembered: without the
leftover bandwidth afforded by compression, other video cards pushing such massive amounts
of data would simply choke! Or WOULD they?
With my trusty TNT in my machine, I thought
I'd download the S3 bandwidth killer
and give it a whirl. Below are two screenshots taken from said bandwidth killer - S3's
special large-texture Quake II level, "news3." Note the image quality afforded
by the use of larger than normal textures. (If anyone know HOW big the textures are,
please email me!) The S3 shot (from a bitmap)
is courtesy of the boys on the good crack, 5Dimensions
(THANKS!). It was taken at 640x480x32. The TNT shot was taken at the same resolution and
saved as a bitmap. Here, both are .jpgs.
Not only does the TNT demonstrate its ability
to display large textures, its extensive OpenGL ICD ensures that it can do while retaining
its high image quality. Pay special attention to the rockets in the rocket launcher in
each image, and you'll notice that S3's render isn't quite as smooth. Also note the word
"GOMAN" on the brick wall. The TNT paints it a deep, rich red; the S3 seems to
be lacking such clarity. Other than these differences, the two images are nearly
identical.

Savage3D 640x480 @ 32-bit

TNT 640x480 @ 32-bit
mmm... TASTY!
Sure... the TNT displayed the textures, and sure it
looks really pretty, but it choked, right? RIGHT?! * insert
Jeopardy buzzer here... WRONG. The TNT nearly ate it for breakfast. * hiccup* =) The only
thing that made my TNT stutter was 1024x768 in 32-bit color. Other than that, it ran well,
so damn well, in fact, that I couldn't help it; I had to bust out the pen and paper,
reboot, and do some benchmarks (on a pretty "dirty" system). The following
scores were achieved with no special tweaks or autoexecs. The only exception that should
be noted is that the TNT was slightly overclocked (though it's ALWAYS overclocked). Moving
right along....
Test system:
Celeron 464A
Abit BH6
Viking Components 64MB PC100 CAS2 (Samsung GH chips)
STB "Get it out! Evil! Get it outa' my system, NOW!" TNT (AGP)*
4.3GB Fujitsu UDMA HD
*TNT using Microsoft's WHQL Detonator drivers
The Answer:
The kicker here, so far as S3 should be concerned, is that a TNT, without
S3's "needed" texture compression, is able to run the demo in quite the same
manner as a Savage3D-based card; at 640x480x32, the TNT runs quite smooth in a system with
only 64 megs of ram, and AGP 2x can take a pretty big hit when limited to less than 64
megs of available system memory. Even the first time around, the levels are playable at
1024x768x16 or 800x600x32, which is extremely impressive, considering there's no S3TC
action happenin'. Lay your peepers on the numbers boys and girls:
|
TNT @ 110/110 - 16-bit |
TNT @ 110/110 - 32-bit |
| 640x480 |
not tested |
75 fps |
| 800x600 |
50 fps |
39 fps |
| 1024x768 |
38 fps |
25 fps |
So where's the choking? The gagging? The choppy gameplay? If you find, it let me know, cuz
I sure as hell can't. Could it be that a Savage3D is capable of running the demo much,
much more quickly? Somehow, I doubt it.
So why the hell does the TNT do so well? For one thing, there's a little
thing called AGP 2x. I've heard a LOT of people talk about how AGP isn't even used yet,
and that it has no real effect in any of the games "we" play. I beg to
differ.... There's NO WAY IN HELL that my TNT ran a demo with 20 megs of textures in it,
at the speed it did, without the assistance of the AGP bus. Clear as a bell? Good.
Speaking of megs, the 16 of SDRAM doesn't hurt; the more the merrier, and the less AGP
action for the TNT to deal with. Of course, the TNT's strong multitexturing and raw speed
both have to be factored in, and... ah, HELL! Why don't I just say it: The TNT KICKS ASS!
(Now if I could only get a TNT2 to review... *ah... HEM....* =)) These benchmarks go to
show that with a well-equipped video card, texture compression isn't really an issue (more
on this later).
Flip... FLOP!
When S3 was asked about their decision to go with only 8 megs of ram, as
opposed to 16, the answer was (roughly) that with S3TC, you don't need more (than 8 megs).
Well, this may be true... in games that support texture compression. What about games that
don't? What about games whose textures are so big and pretty to begin with? What if there
IS NO S3TC? In short, I believe S3 overestimated S3TC (with the Savage3D), decided to
skimp on the memory in place of the new technology, and as a result, flopped.
The train of thought was, "Hey! With texture compression, we can save
a few bucks, and go with 8 megs!" Well... THAT didn't work. Maybe they should've gone
with something like, "Hey! If we use 16 megs, we won't need texture
compression!" Then again, that non-multitexturing thing would've been a bitch.
Don't take this the wrong way; the Savage3D is an okay chip. (The Hercules
Supercharged Beast proved the chip's potential. Unfortunately, it was a little too little,
much too late.) In fact, I believe that texture compression has great potential as a
technology. Paired with the right hardware (Savage4?), it could really shine, really show
the world the way things should be. Perhaps, featuring 32 megs of ram, a multitexturing
engine, AND texture compression, the Savage4 will be the card S3 have been lookin' to get
their hands on. (Speakin' of getting ones hands on a card, I wouldn't mind a Savage4 to
review, either! =))
Next time: Texture Size in Future Games
Have a comment? Send it in!
|