John Carmack on 3Dfx Quake

Blue's News

An email exchange between Harry Goeller and John Carmack:

During the development of quake we talked to all of the 3d board vendors. We knew 3dfx was going to be the fastest, but at the time they were looking at a $399 price tag (before the ram price crash), so we wrote them off as a high end niche player.

Rendition had a cool looking architecture, with good performance and a programmable risc chip. Of all the designs that we saw, we liked theirs best, so we decided to endorse them as a target platform.

I stand by the decisions as the best I could have made at the time.

If I had to make the decision over again, I might very well have chosen 3dfx, but at the time we made the decision, I couldn't have known that:

1: 3dfx would get their price down $100.

2: z buffer performance would become important for quake, which helps 3dfx and hurts rendition.

3: rendition would be as late shipping their board as they were.

4: rendition would have the problems it does with poor windows performance and dma incompatability.

Ok, I'm not omnicient.

Now, as to why we don't just "let 3dfx do the port".

Our time is way overcommited. We are working on Quake 2, quake windows, quakeworld, next generation technology, technology licensing, etc, etc. The code base is common to much of that work, so we don't wan't outsiders messing with it, causing us problems later. Also, it just plain never happens that you send out code and get back a port. Never. Rendition was supposed to do most of the work for Quake, but it still occupied over TWO MONTHS of Michaels time. We absolutely can't afford that again.

There will definately be a direct-3d port that will run well on 3dfx, but there will not be a native port.

> You guys freely acknowledge that the 3dfx card is the performance
> leader but you won't port to it? Why the heck not? You should know
> as well as I that even if the 3dblaster is a better
> price/performance point

Yeah right. Tell that to all of the 486 owners that flamed me on quake's release.

Besides, we could allways support SGI hardware, which is considerably faster than 3dfx. You just have to hunt for a local optimum based on a lot of factors.

> And now
> Quakeworld is apparently never going to get done.

Not at all true, it just isn't the top priority. I can't believe you are criticizing me for not devoting 100% of my life to charity. Sheesh.

John Carmack

> Ok, thanks for the reply. And I'm not criticizing over a free
> product, just frustrated with this 3dfx card in my pc and Quake not
> utilizing it! Arghh. I thought about getting the Rendition but was
> concerned about losing the 2d and windows performance of my
> Millenium. One more question (sorry!): Is there a Direct3d Quake
> separate from Quakeworld? I had thought that Quakeworld was going
> to be the only D3D version?

Not at all. The d3d version will be an outgrowth of the regular winquake, which is nearing completion.

Quakeworld is a seperate codebase for the time being.

> I realize I'm taking up more valuable time with this, but a lot of
> people are curious about it. May I post your full reply to the
> newsgroup and 3dfx pages?

Sure. I assume everything I say gets quoted by someone...

John Carmack