Havok on cross-platform PS3/360 development and challenges

Titanio

Legend
I guess it's something of a topical issue, a lot of people seem to be wondering why ports twixt these two systems are coming off a little worse for wear in certain cases. Gamasutra asked some pretty straightforward questions along those lines, and Jeff Yates provides Havok's perspective on what seems to be the typical issues with 'ports gone bad'. Might be enlightening..

As a bonus, Havok's animation tools are also discussed.

http://www.gamasutra.com/features/20070416/sheffield_01.shtml

GS: How much are the next-gen consoles changing that memory usage?

JY: It's changing for sure. I think the PS3 has great potential, but it's a very different kind of architecture. If people build their games with an understanding of what their challenges are going to be with porting between consoles, we can do a lot. In some cases, though, we're seeing people start with a 360 SKU and defer thinking about the PS3 port later. That can have some pretty dire consequences for how you process your art. We try to advise people that if they're thinking about moving to PS3 eventually, that they need to talk to us at the start so we can get things sorted out. I think that's going to be a very big challenge for everybody for awhile, because this idea of many, many cores with smaller local memories will present a lot of challenges in many different directions.

GS: At this stage, I've heard some people say that when starting with an Xbox 360 version, they have trouble getting the PS3 version to look as good later on. It's interesting, because the PS3 is potentially more powerful.

JY: I think a lot of it has to do with slicing and dicing the task and moving it to each of the smaller processors. Those processors are really powerful, but you have to plan for it. We've spent the last two years re-architecturing our software so that you can have one interface that, when used appropriately, can get maximum use out of the SPUs. You do need to plan for that, and if you have one massive world presented as one object, it's a little more challenging. It takes preparation.

GS: What troubles specifically have people had with moving from 360 to PS3?

JY: There are certain things that are proprietary and need to be walked around carefully, but I would say that you don't have to go back, for example, and redo the art, but you may need to re-export or reprocess the art to chunk it up differently. For our stuff, it may be to store the right amount of information locally, so that when information is passed around the system, it has everything it needs to do its job.

GS: I suppose it's because you can use bigger chunks on 360, whereas on PS3, you have to chop it up a lot more?

JY: Yeah, you have a more unified memory architecture on 360 and PC in general. I think that there are merits to both, though. If you can move the world over to many processors and structure the game so that you can dice stuff up, there's a lot of leading-edge technology out there that seems to be going in that direction. That might just be one of those paradigm shifts that the software development component of the game industry goes through over the next five or ten years.
 
I just read similar stuff from a Julian Eggbrecht, Factor 5 interview, here:

http://blogs.mercurynews.com/aei/2007/04/qa_with_factor_5_chief_julian_eggebrecht.html

Q: How do you look back at this point on the differences between the PS 3 and the Xbox 360?
A: You’ll have a hard time if you port without having a PS 3 game in mind when you created the 360 version. That is where a lot of complaints are coming from. They created the 360 engine with a unified memory architecture in mind, with the embedded frame buffer with its advantages and disadvantages, and not thinking too much in early stages about multicore. If you try to get that over to the PS 3, you’re in for a bad surprise. The PS 3 is all about streamlining [and] about the two different memory pools. They are separate. You don’t have to do tiling because you don’t have an embedded frame buffer. All of these advantages of the PS 3 turn into disadvantages if you don’t start making your game on the PS 3. Hence the griping. If you create first on the PS 3, it is pretty easy to port it to the 360. A lot of companies coming on board now will probably start on the PS 3 and move to the 360. The lucky thing for us is we didn’t have to think about the 360 at all.

Q: Some of the things I’ve heard are that there is a big limitation on this generation is theamount of total memory in the system. The 512 megabytes is just not close to the 2 gigabytes you can have on a PC.
A: Yeah, but didn’t we have this conversation eight years ago and five years ago? Honestly, yes we spent the last four or six weeks going through hell getting Lair into memory. But then again, we were doing the same thing on Rebel Strike. You always complain you don’t have enough memory. I think it would have been a crucial mistake if either Sony or Microsoft had only 256 megabytes. I somehow have the hunch that both of them would have loved to. Tim Sweeney was very outspoken in the early days in the Microsoft circle. The 512 is probably the sweet spot. You have to figure out how to stream. Lair streams its geometry and its textures. If you have got enough assets which are streaming, the 512 megabytes are adequate. And if you have a large enough media to store those textures.
 
Not the only devs to say this. Given the reports of devs developing for XB360 as their 'base' unit or 'target platform', that bodes badly for PS3; it's not going to take ports of xb360 too well. PS3 owners will have to hope that devs lose the notion of one target platform and split development equal from the off, ensuring neither platform's version is a port of the others, but a product engineered specifically for that console.
 
Not the only devs to say this. Given the reports of devs developing for XB360 as their 'base' unit or 'target platform', that bodes badly for PS3; it's not going to take ports of xb360 too well.

I think Yates' argument is that it won't take ports well - when you don't plan for that port from the beginning. The impression I got is that he's pretty confident issues can be addressed if you do so in time. And we do have 'good' ports that illustrate it can be done.
 
I think they are starting to move in the right direction, but it's taking time. It's also a matter of taking off the heat off the PS3 GPU, and moving operations to the SPU's.

There have been some results where PS3 games look comparable, or even slightly better, but mostly after more dev time.

Such as FNR3, RR7, Oblivion. It was very good to hear about the way they developed Virtua Tennis 3, with two seperate teams tackling the different hardwares.

It would be a shame if Sony and Microsoft had to design similar hardware in order to have the games look the same, so even though it's more effort, I think it should be done.

I think the worst port has to be Splinter Cell...that was almost embarrassing.
 
Not the only devs to say this. Given the reports of devs developing for XB360 as their 'base' unit or 'target platform', that bodes badly for PS3; it's not going to take ports of xb360 too well. PS3 owners will have to hope that devs lose the notion of one target platform and split development equal from the off, ensuring neither platform's version is a port of the others, but a product engineered specifically for that console.

That reminds me one of the latest interview with Factor 5: In a near future, all devs on a PS3 game, at least majority, will develop by thinking for PS3 first.
 
That reminds me one of the latest interview with Factor 5: In a near future, all devs on a PS3 game, at least majority, will develop by thinking for PS3 first.

If publishers are able to get their title up and running on the 360 "quicker"; wouldnt it be the base of cross platform titles, in order to get monetary returns faster??

I understand the concept of starting on the PS3 where everything is segmented and then porting to the 360 where the architecture is considerably less segmented but in the end publishers are going to push the version that can be released earlier. IMO
 
If publishers are able to get their title up and running on the 360 "quicker"; wouldnt it be the base of cross platform titles, in order to get monetary returns faster??

I understand the concept of starting on the PS3 where everything is segmented and then porting to the 360 where the architecture is considerably less segmented but in the end publishers are going to push the version that can be released earlier. IMO

I think it’s a little more than that...

I think some of it has to do with company pride and being known as a great developer amongst all platforms.

A game developer doesn’t want to gain a reputation for producing lousy ports or creating sh** coding on any system (soon that will affect the bottom line…money). Sony internal projects and first party wares are starting to show off what the PS3 is really capable of doing (leading by example), thus creating less of avenue for developers to blame the hardware rather than themselves.

So if it’s easier or more beneficial to start with the PS3 hardware first …then I ask why not?! The Xbox 360 fan base will still be there to buy the game, regardless of the starting platform.
 
Last edited by a moderator:
If publishers are able to get their title up and running on the 360 "quicker"; wouldnt it be the base of cross platform titles, in order to get monetary returns faster??

Even if you don't want to release faster, you still want to have the game running as early as possible to have more time for design iterations. But these effects will only be important the first 1-2 years, before developers build up serious tech bases for both platforms - till they reach the "just add monsters" stage :)
 
I think it’s a little more than that...

I think some of it has to do with company pride and being known as a great developer amongst all platforms.

A game developer doesn’t want to gain a reputation for producing lousy ports or creating sh** coding on any system (soon that will affect the bottom line…money). Sony internal projects and first party wares are starting to show off what the PS3 is really capable of doing (leading by example), thus creating less of avenue for developers to blame the hardware rather than themselves.

So if it’s easier or more beneficial to start with the PS3 hardware first …then I ask why not?! The Xbox 360 fan base will still be there to buy the game, regardless of the starting platform.

Why not? I say because you can get it up and out the door faster to the user base who buys more games. Until PS3 games start to sell as well as 360 games why would any developer waste extra time for a small user base that is not buying as many games. The PS3 port is just there to make a few extra dollars right now the money is on the 360. If you make the 360 version inferior you risk biting the hand that feeds you. Making the 360 the lead platform leads a faster and better return right now.
 
I think some of it has to do with company pride and being known as a great developer amongst all platforms.

A game developer doesn’t want to gain a reputation for producing lousy ports or creating sh** coding on any system (soon that will affect the bottom line…money).

I think you have a very unrealistic idea of the balance between corporate pride and financial sanity among developer bosses. Rock-solid studios such as most of EA, Artificial Mind and Matter, and Activision's Treyarch are universally reviled on teh intarwebs, but are happily producing multiplatform titles within phenomenal deadlines. It does absolutely no harm to the bottom line to make Cars or Call of Duty 3 for 9 months for 5 platforms and to go on to sell millions of it - no matter what the SotC/Okami elitist snobs or the "exclusive or die" hardware fanboys talk about you on their favorite forums.
 
Until the PS3 development cycle time is financially equivalent or better than the 360, most CFO's will have a hard time justifying developing on it for multiplatform games.

Also with CPU/GPU intergration going forward in PC land, I'd think that a unified architecture will be more of a focus in development than the split setup of the PS3.

For the PS3 to be the primary dev platform, first it has to start outselling the 360 in terms of software and then improve the dev cycle times.
 
Until the PS3 development cycle time is financially equivalent or better than the 360, most CFO's will have a hard time justifying developing on it for multiplatform games.

Not if you can still make money off it... If you spend 10mil on the Xbox360 version and make 50mil back and you can spend 15mil on a PS3 version and make only 45mil back it's STILL worth spending 25mil and making back 95 rather than just playing the highest earner on its own...

Also with CPU/GPU intergration going forward in PC land, I'd think that a unified architecture will be more of a focus in development than the split setup of the PS3.
What does this have to do with console developers or PS3 or Xbox360 development for that matter? :???:

For the PS3 to be the primary dev platform, first it has to start outselling the 360 in terms of software and then improve the dev cycle times.
Well considering Pandemic already stated multiple times that they placed the PS3 as the primary dev platform for Mercs then your simply wrong in making such a generalised assumption..
 
Not if you can still make money off it... If you spend 10mil on the Xbox360 version and make 50mil back and you can spend 15mil on a PS3 version and make only 45mil back it's STILL worth spending 25mil and making back 95 rather than just playing the highest earner on its own...

What's to say you can't spend 1mil to port and still have good sales? While enthusiasts gripe about ports, the general public who makes up the majority of the userbase, will buy the game for the console they have regardless if the port is missing 5-10%. Also, as I stated, the software sales are not high enough on the PS3 at this point in time so your scenario doesn't work. Basically a good real life scenario would be: if the 360 version of Madden 2008 is 5% better than the PS3 version, and the user only has a PS3, are they still going to get Madden 2008 for the PS3 even though it's slightly inferior to the 360 version? The answer is yes.


What does this have to do with console developers or PS3 or Xbox360 development for that matter? :???:

Engines such a UE3 start off on the PC.

Well considering Pandemic already stated multiple times that they placed the PS3 as the primary dev platform for Mercs then your simply wrong in making such a generalised assumption..

I'm going by majority and have no intentions of doing a back n' forth about what every studio is doing. Judging by the quality of the ports and in relation to the comments made, one can easily figure that the 360 is the primary dev platform for most studios. Software sales and dev cycles with respect to the maturity of the dev tools and programming familiarity will likely dictate which is picked as the primary dev platform and there is nothing wrong with that. It's a business decision, not a personal one.
 
What's to say you can't spend 1mil to port and still have good sales? While enthusiasts gripe about ports, the general public who makes up the majority of the userbase, will buy the game for the console they have regardless if the port is missing 5-10%. Also, as I stated, the software sales are not high enough on the PS3 at this point in time so your scenario doesn't work. Basically a good real life scenario would be: if the 360 version of Madden 2008 is 5% better than the PS3 version, and the user only has a PS3, are they still going to get Madden 2008 for the PS3 even though it's slightly inferior to the 360 version? The answer is yes.

I don't understand what your getting at with this? Your responding to my point in relation to the numbers I gave (merely used to make the point that regardless of whether it maybe more expensive to port multiplat titles to PS3, if you can increase your overall sales across the board, even with the PS3's limited userbase, then you've succeed.. I never in anyway intended that those numbers be taken in any practical context or any other way for that matter...) and using them to provide an arguement which is complimentary to my own and cotradictory to what you stated in the first place.. :oops:

Very strange behaviour.. :???:


Engines such a UE3 start off on the PC.
That they do but this engine isn't dependant on any fixed hardware configuration and therefore your raising of the point of PC processors moving towards a unified CPU/GPU model doesn't hold any relevance to the point you made of the advantages/disadvantages of a unified memory architecture vs separated one of the Xbox360 vs PS3 (in terms of how the developers would leverage the said hardware when developing multiplat engines)

I'm going by majority and have no intentions of doing a back n' forth about what every studio is doing. Judging by the quality of the ports and in relation to the comments made, one can easily figure that the 360 is the primary dev platform for most studios.

I'm not disputing that it isn't...

Software sales and dev cycles with respect to the maturity of the dev tools and programming familiarity will likely dictate which is picked as the primary dev platform and there is nothing wrong with that. It's a business decision, not a personal one.

Fair enough.. I just didn't agree with your previous generalisation which stated that NO developer would ever pick the PS3 as there primary development platform unless the platform sales picked up.. Obviously there are general trends dictated by what is generally considered good practise but it's not every developer who will follow them and in some cases it may not be the most suitable approach to the situation..
 
I don't understand what your getting at with this? Your responding to my point in relation to the numbers I gave (merely used to make the point that regardless of whether it maybe more expensive to port multiplat titles to PS3, if you can increase your overall sales across the board, even with the PS3's limited userbase, then you've succeed.. I never in anyway intended that those numbers be taken in any practical context or any other way for that matter...) and using them to provide an arguement which is complimentary to my own and cotradictory to what you stated in the first place.. :oops:

Very strange behaviour.. :???:

What I meant by my initial statement was "a dev having to spend more to do the initial development on the PS3 to get that last 5% so it's equal to the 360 counterpart might not be practical as you're just gouging your P&L for no reason."


Studio A develops on the PS3 first and then ports over to the 360.
PS3 dev cost = 15million. Port to 360 cost = 1million
No loss of quality
1.5million and 1m PS3 titles sold with $10 revenue per title
Net: 25m - 16m = 9millon

Studio B develops on the 360 first and then ports over to the PS3.
360 dev cost = 10million Port cost to PS3 = 1million
5% loss of quality
1.5million and 800k PS3 titles sold with $10 revenue per title
Net: 23mil - 11mil = 12million

In the example above, I'll even go as far as to say that the 5% in loss of quality offended 20% of the buyers who refused to buy it due to the degradation in quality by developing on the 360 and then going to the PS3.

Software sales for the PS3 need to eclipse the 360's and have a high overall volume to get your ROI on that 20% of customer base that will not buy your game due to it being 5% inferior.

I hope that might more clear than my initial comment :)

The one scenario that would offset the above is in scenario B, where if the cost to port from the 360 to the PS3 was high enough that in the end, the net for both scenarios was the same. At that point, you're better off starting with the PS3 but I'm not so sure that is the case.
 
How can development for XB360 be 33% cheaper, yet porting costs are the same? If PS3 costs more because it's code development is harder, porting should also cost more as you have to use those same tools. I've no idea what the costs are like, but a hypothetical scenario would see the cost of porting something to PS3 that isn't utter rubbish as high, because an engine needs to be severely rethought. And if that's the case, devs may think 'we'll start with the PS3 and rework it for XB360.'

I think you need to divide the workload into engine and assets, as the assets should remain fairly constant. Let's say $10 million for them. Let's say $5 million to create a PS3 engine from scratch, and $3 million to create an XB360 engine from scratch because it's easier. Now if to port from PS3 to XB360 costs $1 million as it's easy, and to port from XB360 to something reasonable on PS3 costs $3 million as it's hard, you get a different economy.

Build for XB360 and port to PS3 = $10M + $3M + $3M = $16M
Build for PS3 and port to XB360 = $10M + $5M + $1M = $16M

If the latter is easier and gets better results, it'd be the logical choice. Of course these are arbitary figures and anyone arguing with such statistics can pick whatever numbers they want to illustrate their argument. ;)
 
For traditional high selling franchises or with new IPs with huge backing of which multiplatform is set in stone, this approach makes sense.

But, for investing in a port before it can determine whether or not a ip will be successful enough to warrant a port, this approach is impractical.
 
How can development for XB360 be 33% cheaper, yet porting costs are the same? If PS3 costs more because it's code development is harder, porting should also cost more as you have to use those same tools. I've no idea what the costs are like, but a hypothetical scenario would see the cost of porting something to PS3 that isn't utter rubbish as high, because an engine needs to be severely rethought. And if that's the case, devs may think 'we'll start with the PS3 and rework it for XB360.'

I think you need to divide the workload into engine and assets, as the assets should remain fairly constant. Let's say $10 million for them. Let's say $5 million to create a PS3 engine from scratch, and $3 million to create an XB360 engine from scratch because it's easier. Now if to port from PS3 to XB360 costs $1 million as it's easy, and to port from XB360 to something reasonable on PS3 costs $3 million as it's hard, you get a different economy.

Build for XB360 and port to PS3 = $10M + $3M + $3M = $16M
Build for PS3 and port to XB360 = $10M + $5M + $1M = $16M

If the latter is easier and gets better results, it'd be the logical choice. Of course these are arbitary figures and anyone arguing with such statistics can pick whatever numbers they want to illustrate their argument. ;)

Your scenario works if they're willing to put the extra 2million from the 360 build and port to make the PS3 port at the same level. But if a 5% loss in quality will save you 1-2million in the porting costs and the userbase that shuns your game for such doesn't makeup for that cost, then it's a loss. Thus needing higher software sales to offset that.

Not saying my scenario is any more right or wrong than anyone else. Just trying to think outloud the various factors that could lead to such decision making, most of which I believe to be financial.
 
Your scenario works if they're willing to put the extra 2million from the 360 build and port to make the PS3 port at the same level. But if a 5% loss in quality will save you 1-2million in the porting costs and the userbase that shuns your game for such doesn't makeup for that cost, then it's a loss. Thus needing higher software sales to offset that.
I don't think it can be quantified in that way. How much money == quality is probably not something you can pin down. It's quite possible that putting more and more money in doesn't net any benefit, as the issue of quality is one of design. Thus a cheap port is diabolical, and the only non-diabolical port is going to cost a fair bit more, without any middle ground. That's been the impression I've been getting from dev comments. You have to design for the PS3. If you don't, porting is going to produce a less than stellar design. If you do, both platforms can produce respectible results, but that will require the effort of creating a proper PS3 design. The choice devs face is either 'produce diabolical ports on PS3 at a saving' or 'design for PS3 at a cost but produce impressive results', and it's a choice that's technical in nature, not economic. There's of course economies that'll affect their choice (why bother designing this game to fit PS3 when it's got such a tiddly little install base?...) but the choice of quality isn't one of choosing how much money to spend.

Which is where my opinion differs from yours. I think the choice is technical, rather than financial. At least in consderable part.
 
Back
Top