Learning about the old days - GPUs

Started by
11 comments, last by discman1028 16 years ago
I don't think there's much to learn from the fixed function. A lot of it was derived from arbitrarily or from old SGI hardware using GL. The number of texture stages, for example, doesn't mean a thing. Fixed function hardware never supported this number of stages, and neither did pre-SM2 programmable hardware. SM2 hardware can do a lot more. So you can't really learn anything from this.

If you're interested in what the fixed functionality does, ATI's FixedFuncShader sample should be a good place to look at.
Advertisement
Quote:Original post by Sneftel
Quote:Original post by discman1028
How does having shader hardware help me learn about what the hardware fog unit does?

Because there is no "hardware fog unit". There hasn't been for years. Even before vertex programs were directly exposed to users, there still wasn't. It just didn't make much sense to have quite so much special purpose functionality on the same chip. Instead, GPU manufacturers implemented it using something much more similar to vertex programs than to the user-friendly-ized "glFog".


Can someone elaborate more on this? What did glFog() do before the days of this "something similar to vertex programs", if anything? And is there a concrete definition somewhere of what the "something similar to vertex programs" is?

Quote:Original post by ET3D
If you're interested in what the fixed functionality does, ATI's FixedFuncShader sample should be a good place to look at.


Thanks, this was a perfect reference for me. It's great that you can do a diff to visualize how the fixed function calls and the shader implementations differ. What's interesting to me is why and where they would differ at all. The pdf has a small blurb of an inference:

Quote:Due to what we believe are numerical precision issues (e.g., dword vs. float4), we often get small errors in our shader. The “green” errors can be turned on and off from the View menu or by pressing D.


Though those small "green" errors don't seem to be FF vs shader related. The FF vs shader related diff shows up in "yellow" (before you press "D"). They (ATI) don't expunge at all on why FF vs shaders would be different at all. Hmmmm. Any ideas?
--== discman1028 ==--
Quote:Original post by discman1028
Though those small "green" errors don't seem to be FF vs shader related. The FF vs shader related diff shows up in "yellow" (before you press "D"). They (ATI) don't expunge at all on why FF vs shaders would be different at all. Hmmmm. Any ideas?


In retrospect, it's possibly b/c "only portions of the FF pipeline are implemented in HLSL". And/or it's probably just small differences like order of operations in the shader and fused multiply-add's causing slightly different accuracies, etc.
--== discman1028 ==--

This topic is closed to new replies.

Advertisement