Skip to content

Dealing with new-gen

Originally published in Develop issue 68, December 2006. Reproduced here with kind permission of Michael French.

As I write this, the PS3 has launched. After a deluge of negative press I’m starting to see positive reports on the web. Is this the start of the next-gen as we’ve been told?

I find this hard to answer, perhaps as I have difficulty defining what ‘next-gen’ actually means.

Is it just more of the same, but prettier, more dynamic? If so, fine, I’ll buy that, but it is unfulfilling. I’m after something with deeper involvement, more emotional clout. I want next-gen to deliver the Emotion Engine’s broken promises.

But that’s me. You need to make the decision as to what next-gen means for you and your business. Such a focus should guide your creative and technical decisions. Without one, your progress will be hampered and you’ll end up frustrated. I can say this from experience.

As programmers, we can use this focus to drive the development of core tech, regardless of whether it’s handled by a separate team or not. Whether the design goals are to create living worlds, to make the player understand a hero’s emotions from a single pose or to give them challenging interactions, we’re still the ones creating the technology.

Image of PS3

The PS3 is a confusing piece of kit. Powerful, complicated, flawed. But to those coders who gain masochistic pleasure from programming it, it is an exciting challenge. But perhaps more significantly, Cell has the potential to educate all programmers on how to create seriously future-proof game systems. So when those designers come to us we need to think hard before saying ‘no, it can’t be done’.

It’s easy to see how discrete systems can be moved to an SPU; animation, rendering, sound, particle systems. The challenge is moving the more complex systems to the SPUs. I’m thinking AI as an example. Is it practical to move a character’s logic entirely to SPU? Such code is typically very branchy, something an SPU won’t like. It requires a rethink as to how we design our systems. PS3 places the responsibility for delivering an optimal

game squarely with the developers and won’t forgive sloppy coding. Synchronous approaches won’t cut it any longer. I don’t have any magic-bullet solutions for you; your requirements might be the total opposite to mine. But if you sit down and plan it out, you’ll be set; code that runs well on PS3 should run well on any future platform. I’ll bet future PlayStations will use a whole load more SPUs.

Y’know, this might be next-gen after all.

No comments yet

Leave a Reply

Note: XHTML is allowed. Your email address will never be published.

Subscribe to this comment feed via RSS