Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Is this an especially odd architecture? What do other GPUs look like?


From a glance it looks fairly standard for a fixed-function GPU of the day. These GPUs were primitive by modern standards; they didn't even have hardware T&L, meaning everything essentially had to be converted from 3D to 2D on the CPU†. The weirdest part is per-polygon mipmapping, which is not normal. (I didn't even know anyone even did this; it's clearly going to look terrible in many common cases, such as large textured floors. That being said, I can understand why they'd do this if they were in a rush; calculating screen space derivatives in both X and Y, as required for per-pixel mipmapping, is really annoying with a scanline algorithm, which they were probably using as Pineda rasterization hadn't caught on yet.)

†I know that normalized device coordinates are still 3D, so "converting 3D to 2D" is technically wrong, but it conveys the right intuition.


> The weirdest part is per-polygon mipmapping, which is not normal

I suspect that per-polygon mipmapping is actually calculated on the CPU. That would mean the actual hardware doesn't really implement mipmapping, it just implements switching between texture LODs on a per-triangle basis (probably that "M" coord in the 0x17 object).

Apparently later drivers from 1999 did actually implement per-pixel mipmapping, but I have a horrible feeling that's achieved by tessellating triangles along the change in LOD boundary, which must take quite a bit of CPU time.


I strongly recommend https://fgiesen.wordpress.com/2011/07/09/a-trip-through-the-... if you're curious about GPU architectures. Though in the 14 (!) years since, a lot has changed still.

In the modern era the 'compute shaders' part of that has become more dominant and lots of fixed function parts of the graphics pipeline have moved to software.

I'd love to see a more modern take on this if someone has run across it.


Well, RIVA 128 didn't even have multitexturing, so not much of that is going to be applicable. I don't think that Voodoo era chips even used Pineda rasterization as that article details; they did fancy scanline rasterization.


I interpreted rayiner's question as present tense, "what do GPUs look like now" - you're definitely right that most of the architectures I know of from back then were doing scans or (a bit later) tiling.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: