Why WinQuake exists and how it works
7 comments
·December 4, 2025progmetaldev
This is a great write-up for those of us that were into Quake when it was released. Trying to tune your performance was a huge undertaking during the days where you tried running Quake while also having Windows 95. I got into Quake because of all the available MAP tools you could use with it, and the multiplayer aspect, which previously had been very difficult to get working without a LAN.
01HNNWZ0MV43FF
That's some of the same stuff that SDL is meant to abstract over, right? Although I guess SDL was more targeting Windows / Linux differences than Windows / Windows differences.
Sharlin
Also Linux/Linux differences – Xlib, SVGAlib, DirectFB, DRI, GGI, DGA and who knows how many other ways to draw stuff on the screen existed for Linux back then.
jon-wood
Yeah, also SDL didn't exist until a year after WinQuake's release.
null
null
The detail that -wavonly (falling back to the older WinMM API instead of DirectSound) actually gave the highest frame rate is a perfect example of a lesson that keeps reappearing in systems programming: "more direct" doesn't always mean faster when you're CPU-bound. DirectSound's lower latency came at the cost of more CPU cycles that could otherwise go to rendering.