I really just don't get why they made Quake and other Pentium-era apps so FPU heavy in the first place. Were they in bed with Intel and wanted to help them sell more Pentium boxes? It stands to reason that a copy of Quake (as an example, other games are guilty too) costs less than a new computer at that time, by far. That means that ID lost TONS of money in sales to high-end 486 owners who couldn't tolerate low framerates or assumed it wouldn't run playably (and couldn't afford to buy a new machine for games) where if it had just let up on the floating point math in favor of integer math, the performance would have been much more acceptable..
They could have made the game go "hrm, this is a Pentium - turn on the good shit!" and if it was a 486, it could disable or reduce particles, dynamic lighting, and other features like this. I've read through lists of console variables for the DOS version of Quake and it seems that while there's a command to enable flat lighting, there's no command to disable the dynamic lighting - all that does is end up making it brighter and worse looking without the performance boost... There's also NO variables dealing with particles at all.
It would be nice if there were a way to have enemies rendered as sprites instead of 3D models, but I don't blame the developers for not including that - it would be a lot of largely unjustified work.
I've got a Pentium Overdrive in there now, and the performance is still rather bad - I blame my graphics card for this part of the fail, however - 512K VRAM on ISA isn't the best, heh. I'm still racking my brain trying to figure out ways to make it work better, but unfortunately I can't get the game to compile (I've tried under an XP VM, and under my actual DOS machine, both the original source and QIP source) so source modifications are currently barred from my list of options.
My latest thoughts are that according to tests by linuxlove (a friend on another forum) the Windows version runs just as well as the DOS version - somehow. The benefit of WinQuake vs DOSQuake, though, is that it may allow for an expanded list of console variables to be available, as well as command line parameters..