barbos wrote:Well Carmack is just lazy. The hardware industry has moved to multiple processors/cores. The gaming industry needs to move as well.
It's this simple. Whichever platform is easier to write games for will have more games. And that platform will win the next round of console wars.
Not to be skeptical about any of your qualifications about game engine design (fancy graphics or not), but someone who has written at the hardware level for a bunch of successfull games might have a little more wisdom than one might find on the BWC boards

(unless someone here has written something as complicated as a full game engine - engine mind you, not placing content in someone elses engine. How many of you have written the real guts? Yah, I thought so.)
Anyway, for what it is worth, this is what he had to say:
Carmack raved about the relative ease of developing for Xbox 360.
But the Xbox 360 was designed to have a very thin API layer. In Carmack's words, he can "basically talk directly to the hardware ... doing exactly what I want."
Here Carmack heaped praise on the decisions that Microsoft has made with the Xbox 360. "It's the best development environment I've seen on a console," he says. Microsoft has taken a very developer-centric approach, creating a system that's both powerful but easy to code for. This is in contrast to Nintendo, Sony, and (formerly) Sega, who generally focused on the hardware.
Regarding the strength of mulithreading in game design:
Carmack points out that there could be diminishing returns with the next generation of consoles, thanks to the architecture of the hardware. Although the PS3's Cell processor is powerful, it's still a single-thread processor (unlike high-end PC processors). There's not much more technology can do to crank more speed out of a single-threaded processor. To make up for this deficiency, multiple processors are used: multithreading and parallelism is the way to go. But this isn't easy to do in games! "The returns will initially be disappointing," he explains.
It will take a long time before game developers will figure out how to get the most out of parallel processors, and in the meantime, it's going to make high-end game development more difficult -- "Not a good thing," Carmack says. There's no easy solution to this problem, no special compiler that'll take away the grunt work. "There's no silver bullet for parallel programming."
Sony's position seems to be similar to the company's stance with the PS2: Sure, it'll be hard, but the really good developers will suck it up and figure it out. But Carmack wonders aloud: wouldn't it have been better to use multi-threaded processors to begin with?
and:
That aside, Carmack spent a few minutes talking about Artificial Intelligence as something that can be offloaded to another processor for a cutting-edge game. Carmack is skeptical. AI is a very bleeding-edge science, and it can often be processor intensive, but when applied to games AI is usually a matter of scripting. What game designers want is a way to act as the 'director,' telling enemy and friendly characters where to stand and what to do. This doesn't take a ton of processing power.
Moreover, even if you did throw tons of resources toward the AI, it might not be the best thing for gameplay. For instance, writing tons and tons of code to enable monsters to hide in the shadows and sneak around behind the player would be interesting, but often these types of things could be scripted for a fraction of the effort and - for most players - the experience would be just as cool if not cooler. Carmack recounts how players of the original DOOM would think that the monsters were doing all sorts of scheming and plotting and ambushing when, in truth, they were just using the equivalent of one page of C code and running the most basic of scripts.
There is no wrong answer, but I still think that the Evil Empire is going to come out ahead on this one.