Carmack: Lord of the Games
seer writes: "This article on Red Herring is a nice look at the interworkings of id software, most specifically their famous employee John Carmack. It delves deeply into the fact that id has stayed a very small company and dabbles with other topics such as Carmack's tendency to stay away from Microsoft 'standards' and the whole DooM ]I[ debacle. An interesting read."
There was a point in id software's evolution where John Carmack almost adopted Java as the "scripting language" for Quake 3. This got abandoned REAL quick when it wasn't fast enough.
Java is all about interoperability, then ease of design, then speed.
Id software's game engines are all about speed, then interoperability, then ease of use. All the same, they STILL tend to be pretty easy to use, since they aren't motivated by business decisions as much as they are by making a really, really cool game engine [while this has positive business ramifications, obviously, that's not why they do it].
Quake 3 is a SUPERB game engine on all platforms. I can write my own game as a Quake 3 mod, and without any recompiling, have it instantly work, at high framerate and with no bugs or glitches, on three different platforms. Show me how Java can do that.
Id software's game engines ALREADY surpass Java. It's not going to get worse from here; it's going to get better.
-Hentai [in vita non pacem est]
You may be missing the bit that says "Mr. Carmack, a multimillionaire."
Once you're able to buy just about anything you want, the ability to buy more stuff isn't that attractive. Beyond that, "more money" would come with an inevitable loss of control -- to take ID Software to a large company would mean hiring legions of programmers and managers.
At that point, it becomes what most large buisnesses become -- merely brand names. When that happens, it's no longer Carmack's baby, and it probably wouldn't be something he enjoys.
Ergo, ID Software stays small.
"Evil company X is threatening to restrict our rights! Let's all get together to stop--OOOH! SHINEY!!!" -- AC
To this reporter, Carmack isn't using OpenGL, an existing 3D graphics standard which Microsoft refused to adopt in favor of their (for years inferior) attempt to lock programmers in to DirectX, he's using "his own graphics technology" which is "almost like a religious thing for him".
Shrek was always the same
I think that you're confusing Shrek-the-movie with Shrek-the-poster.
Thank you, have a nice day.
--
Damn the Emperor!
This article is the most motivating article I have ever read. He not only tries to write code that will port well in order to insure his product gets to as many people as possible, but unlike other stupid software companies he refuses to overextend his company to more the 17 people.
I've worked at alot of companies and one thing is for sure. Everything starts to go to shit when you can't walk over and talk to all the other developers.
This would be the ideal company to work for and they make the ideal product. Then they let the community do the beta testing. I love this man. His ideas are harsh on the MS way to do things which is probably why they work so well. Instead of employing rediculous amounts of people inefficently turn a mediocre product and then either market it to hell and back to make everyone think they need it, or force all of their existing customers onto it.
They keep a small number of really smart people in one room and turn one of the best products out, and let the product practically sell itself. This is how things would be in an ideal world, but the idea of making the best product so that people will pick it over others is wearing thin, esspecially now that Microsoft has bought most of the GL patents from SGI.
He obviously wants other things more than he wants to get richer than he already is. I'm not a mind reader, but I'm guessing those things include personal satisfaction, public recognition, love, health, and probably the ability to maintain his current standard of living. This is just an example of how money can only take you so far on the road towards happiness.
Make love, not sigs
This is really an unfair comparison -- you're comparing oranges and apple pie.
From a compatibility perspective, Java is all about cross-platform-binary-compatibility. To do that, it essentially needs to emulate a consistent set of machine-interfaces -- that's where the Virtual Machine comes in. Beyond that, Java is also supposed to be a "next generation" "idiot-proof" language, and to that end it sacrificed speed for safety (of code).
Carmack's code is about source compatibility. So far as I know, the primary language for ID Software's 1st-person shooters is C/C++. That language, to the bane of novice programmers everywhere, has a tendency to make absolutely no assumptions for you, and as a result well-written code can be highly efficent [gaining an immediate speed advantage over comparably well-written Java code]. Of course, it does mandate some level of system-speficic code somewhere in there, but a good programmer (like, for example, Carkack) will encapsulate it behind an #IFDEF or two.
The only thing that really stops people from writing cross-platform code is system-specific libraries (Like DirectX). Once your code is built around something that tends to be as fundamental as DirectX, a transplant to another library for a different platform is no easy task.
Carmack's "common code," is therefore merely smart design. As the article says, he shies away from the system-specific libraries, so porting becomes a much easier task.
"Evil company X is threatening to restrict our rights! Let's all get together to stop--OOOH! SHINEY!!!" -- AC
Having seen Shrek, I know there is more onscreen at any given moment than a single character.
Those apples are nowhere near the size of those oranges.
From what I hear, the last piece of code Bill Gates wrote was gorilla.bas .. I don't know about you, but I think that's MUCH slicker code than any of John Carmack's inventions...
By the time Quake 3 Arena came out, I think a lot of people realized that id had basically become a brilliant game engine company that should just cast off the illusions that they were experts in creating innovative gameplay. Because I think, while you can debate the merits of the technology behind id's products until the end of time, it became clear to many that the innovative gameplay was happening somewhere else. While the engine was brillaint, Quake 3 the game was the same old, same old. Deathmatch in a brown castle.
While many people had not-so-kind things to say about the multiplayer aspects of the origional Unreal, when Unreal Tournamnet came out, Epic was pushing the bounderies of online gameplay, while id was left in the dust, cranking out the same thing yet again.
Not to say Quake 3 was a crap game, a hell of a lot of people enjoyed it then and enjoy it to this day. I'm just saying that it was part of a downward trend at id, one that they seem to have addressed, and I commend John Carmack for that.
Even thou FPS games dont make the level of sales of everquest or pokemon, ID game engines are the best for FPS shooters.
The norm at Lan parties are mostly ID engines based games. RTCW, MOHAA Demo, Q3A, Q3A Urban Terror, Action Quake2, the only 2 games that wasnt, where Counter Strike and Ghost Recon. The main game for money was CS, but we had so much fun playing Q3A UT, we had to push back the CS tourney.
-
Amiga OS is out for your x86
But as the article stated, Id makes roughly $1 million per employee... hell, at that clip, Carmack can buy back John Romero's car.
I'd have a personalized plate on my car, but "toxic bachelor" won't fit into 7 letters.
Take a look at the FTP site: Wolfenstein 3D, Doom, Quake, and Quake 2 are all available. You still have to have the map files and other game data from a "real" copy of the game in order to play it, but all of Carmack and Co's magic is up there for study.
In short, they have quite a history of "giving back to the community." Even for games (such as Q3) where the full source isn't released, id always releases SDK's (for lack of a better term) to allow anyone that wants to the chance to create add-ons, extensions, and "total conversions" -- new games based on the existing code.
Very, very, cool.
Its obviously a tease, sheesh. Gates probably does not code much, John does every day. If you ask me (not that you did) it shows that Mr. Gates has a pretty good sense of humor. Yeah he may have billions in the bank but its an obvious jest. Heh, I would feel pretty good if the leader of the commercialized software world complimented me so.
Jeremy
The last major code Gates wrote (so I've read) was the software for the Radio Shack portable Tandy TRS-100 (which had a rather long battery life, built-in modem, and was widely used by journalists in its day).
Gates' claim to being able to write tight code is not without support: he did, after all, write much of MicroSoft's original code, which were BASIC interpreters that ran on systems with very very little RAM.
Romero did not quit. He was fired.
I no longer have the url but John Carmack said Romeo would blow off the day by playing and not coding and would not listen to other employees about idea's for the games. He basically wanted a game with a story and intereactive plot while John Carmack did not. The split grew worse and worse and he eventually refused to work on the same assignments as Carmack and he would do his own thing anyway. Carmack got so pissed that he went to the CEO and made a case to fire him. The CEO who was behind John Carmack all long fired Romeo and another co-worker to set an example. John Carmack is a perfectionists and doesn't like other people getting in his way. But what made it worse was that the whole team went one way while Romeo refused to go with the flow. THis and not the hours is why is he left.
http://saveie6.com/
...if I can find multiple things they got wrong on things I know about, then I seriously doubt they're getting the stuff right that I don't know about.
Mr. Carmack, cofounder and lead programmer at Id Software, is sticking to his own graphics technology. He is an absolute techno-purist who seeks to produce a common code that can run on Windows, Linux, and Macintosh operating systems--something he can't do with Microsoft's technology.
It's not his own graphics technology, it's OpenGL, which is used by many programmers around the globe. And he doesn't do it because he wants to have portable code. That's a part of it, sure, but he uses OpenGL mainly because it's easier to code, which means less development time and less debugging time. Also, it allows for greater flexibility. Not to mention, with Direct3D, can we say, "namespace pollution"? I thought so.
And by being such a purist, he delights hard-core gamers and graphics experts.
Oh yes, I get every id game simply because he "sticks to his own graphics technology". Did the author actually consider that he delights hard-core gamers simply because he creates realistic games that have fun gameplay and stunning visuals?
The new Doom likely will require a no less powerful chip than the soon-to-be-released Nvidia GeForce3.
Newly released about a year ago...
He told a faithful crowd that the new Doom will have images comprised of 250,000 polygons, compared with only 10,000 or so in Quake III. That's not far away from the 1.5 million- polygon characters in the animated film Shrek, which set a new standard for realism for computer-animated cartoon characters.
Notice he said "images comprised of 250,000 polygons", and "That's not far from the 1.5 million- polygon characters in...Shrek". This isn't like comparing apples to oranges, it's comparing apples to Mack trucks.
No comment.
Uh, NO.
BattleZone in the arcade, and Stellar7 on the Apple ][. same thing.
Feed the need: Digitaladdiction.net
"It legitimized the shareware movement, starting in 1993 with progressive releases of the Doom franchise, which generated more than $100 million in revenue (even though roughly 15 million copies of the original were downloaded for free). "
Now if only the RIAA and other places would read that and understand that sometimes when done properly that such things do work in a internet world.
-THIS SPACE FOR RENT!
And so the poor man who just wants to be left alone, and not a cult icon...
... is written about, and posted on slashdot.
I can agree that a business publication would want to avoid technical discussion, I think you're missing the tone that the article presented. Read it again:
The message is plain. Carmack avoids an industry standard developed by Microsoft called DirectX. Everybody else uses it. Instead, Carmack is some kind of technological religious zealot who uses his own system.
Granted... the article does go on to point out that his decission allows his software to run on many platforms. Something Microsoft's technology does not allow. But its possible that someone unfamiliar with the industry might miss this message and attribute Carmack's refusal of microsoft as another aspect of his ecentric personality.
It would be different if the writer had reported Carmack has adopted an open graphics standard over a more restrictive standard provided by Microsoft... despite Microsoft's professed incredulity over the choice.
A few corrections to the article:
"My own graphics technology"
is OpenGL.
"Mr. Carmack also plays computer games in the office with his coworkers"
I played Q3 quite a bit, but not much since then. The team focus of TeamArena and Wolfenstein just isn't my favorite type of game.
"Polygon counts"
The Doom engine is not an ultra-high poly count engine, because it is built around dynamic lighting and shadowing, but it is still a large step up from our previous games. Typical scenes will have around 150,000 polygons, versus 10,000 for Q3. There will certainly be other games with higher raw polygon counts, but that is really focusing on the trees, not the forest (image quality). The large numbers that have occasionally been tossed around are the polygon counts for the high detail characters that are used in the generation of normal maps for the real time rendering. Some characters are over 500,000 polygons in their original form.
"It looks like the type of game that is so thrilling to play that gamers will do so over and over again, even though it lacks a narrative plot."
Unlike everything we have done before, the new Doom actually DOES have a real plot, and I think it is going to be presented well. I don't really expect most people to believe us at this point, but wait and see...
"The new Doom likely will require a no less powerful chip than the soon-to-be-released Nvidia GeForce3"
It is designed for full impact on a GeForce-3, but it still runs on a GeForce-1 or Radeon.
They didn't reproduce the graph of our revenues from the print version, but that was also way off base. I guess they estimated them based on our title sales, but while Doom II remains our best selling title, we have much better royalty arrangements now than we did back then, so we make more money today.
John Carmack