A chat with John Carmack

by Rob Jellinghaus
You are the  visitor since 15 November 1998.

On Monday morning (16 November) I received two corrections to this page from John Carmack, regarding Java licensing (Kaffe, not Cafe) and C game DLL code size (30K lines, not 3K).  Both those corrections have been made.  On Monday afternoon, I added the mention of John's "vector to raster" analogy in the "future of 3D" section, and added mention of the multiresolution book (thanks to those who wrote in about it!).

So yesterday I was in my San Francisco apartment surfing voodooextreme.com (or maybe it was bluesnews.com), when I chanced upon the announcement that John Carmack would be speaking at the Professional Gamer's League championships about twelve blocks from my house in fifteen minutes.  Mountain bike ahoy!!!  And ten minutes later, I was watching the Starcraft finals before The Man came onstage to rap with us all.

There's plenty of coverage of the finals and of John's speech elsewhere on the net, but I managed to chat with him for a while after his official speech was over, and got to ask some questions about which all you tech-heads might be as curious as I was.  (Incidentally, if the video of his speech makes it onto the web anywhere, the first audience question--"Do you still think all analytic curve representations basically suck?"--was me :-)

So here's the scoop.  All these notes are my recollection of what was said, with some additional explanatory detail--I didn't have a tape recorder or even a notepad in hand.  Any misstatements are my responsibility alone--if you feel like flaming John for something in here, flame me first!  because I probably got it wrong!


  1. Java in Quake--why not, yet
  2. The future of 3D graphics
  3. Some Quake 3 architecture tidbits
  4. Other general notes from the talk
  5. My personal take
  6. Thanks

Java in Quake--why not, yet

Turns out that John actually got into negotiations with the Kaffe team to get a version of their Java virtual machine to ship with Quake 3 (he even said the terms were "pretty reasonable").  But he wound up backing away from Java for a few reasons:

The future of 3D graphics

Back in April one of John's plans mentioned that "All analytic curved surface representations basically suck."  I've been curious about that ever since, so I asked him about it.  Here's (paraphrased through my limited 3D graphics understanding) his position:

Some Quake 3 architecture tidbits

Some pseudo-random information about Quake 3's internal architecture: And on a personal note, I found John's recent plan update on the nature of time to be very very helpful in the project I'm currently working on... thanks, John!  :-)

That pretty much does it for the conversation I (and others) had with him.  So:

Other general notes from the talk

Hmm, seems like the talk itself hasn't hit the web as quickly as I thought.  Oh well, here's some of what I remember. See the PGL writeup for more on the talk--hopefully the video will hit Shooters or something at some point.

My personal take

Thanks for reading

Hope you enjoyed it!  I know it was a nice unexpected weekend bonus to get to pick John's brain, and God knows I can't wait for Quake 3!  Keep up the good work, id folks--it'll be a pleasure to witness (and play) id's work in the 21st century.

Rob Jellinghaus (itinerant programmer)

Back to RobJ's home page.  Back to Unreal Enterprises. Created 15 November 1998, last updated 16 November 1998, and copyright by Rob Jellinghaus.