The Art of PS3 Programming
The Guardian Gamesblog has a longish piece talking with Volatile Games, developers of the title Possession for the PS3, about what it's like to make a game for Sony's next-gen console. From the article: "At the end of the day it's just a multi-processor architecture. If you can get something running on eight threads of a PC CPU, you can get it running on eight processors on a PS3 - it's not massively different. There is a small 'gotcha' in there though. The main processor can access all the machine's video memory, but each of the seven SPE chips has access only to its own 256k of onboard memory - so if you have, say, a big mesh to process, it'll be necessary to stream it through a small amount of memory - you'd have to DMA it up to your cell chip and then process a little chunk, then DMA the next chunk, so you won't be able to jump around the memory as easily, which I guess you will be able to do on the Xbox 360."
We can tell Immediate Mode/Retained Mode is ancient history.
Thank God. It was stupid to begin with, yet Microsoft kept pushing it version after version. I know it was still there at least as high as DirectX 5.0.
With OpenGL having been ported to just about every platform in existence, it just doesn't make that much sense to bother with DirectX unless you really have to. (Which thanks to Microsoft's interference, does happen to professional developers. Poor bastards.)
Javascript + Nintendo DSi = DSiCade
OTOH every 3d graphics card manufacturer provides an OpenGL library. There's really no reason you have to be tied to Direct3D. There are however good reasons to use other parts of DirectX, specifically DirectInput. I hear SDL has something like DirectInput now, but I haven't looked at it yet. SDL definitely provides a layer over audio that will pipe stuff to DirectAudio, though, and you can use OpenGL for cross-platform graphics, which is pretty much the method that I think makes sense.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
"...you'd have to DMA it up to your cell chip and then process a little chunk, then DMA the next chunk, so you won't be able to jump around the memory as easily, which I guess you will be able to do on the Xbox 360."
"I guess"? Thats a HUGE deal. In essence you cripple all of the other cores. Not to mention we have seen articles posted on slashdot before that point out you can't use all 8 cores for a game, but "I guess" that is another topic all together.
"I guess" what I'm getting at is that this guy is obviously bias and doing a fluff piece/ damage control. His choice of words is very telling, and the attempt to downplay a HUGE gotcha makes me skeptical of everything he says.
I can't speak to PS3 development (yet), because none of my clients are working with it... but I look forward to having the opportunity... but this article makes me believe that it really is as bad as others have said.