georgel wrote:I am not a game expert but as far as I know Doom and Quake use similar engines and have common roots. If Doom needs only integer CPU for 20 FPS then this statement is false:
mpe wrote:So Quake needs the FPU for a reason 😀
DOOM and Quake aren't all that similar.
Quake is a full polygonal 3D engine with 'conventional' texturemapping, with 6 degrees of freedom.
DOOM is somewhere between Wolf3D and Quake. Like Wolf3D it only has limited movement and orientation. DOOM can basically only draw floors/ceilings and walls, at fixed angles. Its texturemapping is optimized for these cases. It doesn't need any FPU because of this.
Quake indeed needs an FPU for a reason, and the reason is that it was designed that way. It uses conventional perspective-corrected texturemapping, which requires 1/z calculations at specific intervals (in their case they approximate it with once every 16 pixels). This 1/z is done with the FPU.
You wouldn't necessarily need an FPU for this kind of 3D engine, but then you'd need to redesign the code.
Descent is the closest to this. It also supports full 6 degrees of freedom in fully textured rooms. Descent however does not use the FPU for this, and as a result, it does not need a Pentium. It runs fine on a fast 486.
Its texturemapping is slightly lower quality/precision than Quake though.
But in theory you could build a Quake-like game on a Descent-like engine, resulting in a playable Quake on a 486. Possibly trading in a bit of quality, but not too much.