*Game Development Issues*

Status
Not open for further replies.
I think the fact that triple A games like COD4, MGS4 and Halo 3 are rendered to sub-HD resolutions should not be used as proof that the hardware they run on is inferior. Those design decisions are likely grounded on what will provide the best possible experience to the user given the games target renders and the projects budget, release date etc.
 
I'm no expert - far from it - however this is how I look at it.

An exclusive game is (usually) designed from the ground up to a specific platform (and even a promised spec - MGS4) - then devs may decide to make choices to have the game run better...for example a slightly lower res to increase the FPS or allow a few more effects, this is perfectly acceptable and a desgin choice.

However a mutli platform game has a lead platform (usually X360 up until now) and then devs have a limited time to try and get it to run as best as possible on the other platform (usually PS3). And this is where it's different (for me). Now devs are taking things out/reducing resolution/doing whatever they need to to get the game to run as best they can. This is not so much a desgin choice as a way best fudge something.

I'll make it simple - this is how I see it - If I have a round hole (X360) so I'll make a round plug. However I want this to use this in the octogan hole (PS3), but to save time (money and resources) - rather than start again I'll try to best make this round into an octogan...it won't fit perfectly but it'll do.

This then leads to the X360 vs PS3 comparisons debate - and the problem is (and this is usually when it's X360 to PS3) that devs struggle with the split RAM setup, and due to them having less resorces (time and devs) and the fact they are working on the notoriously 'hard to program for' PS3, we end up with something being removed and the devs doing the best they can...it's not lazy devs (I've been guilty of saying this) it's resorces and deadlines (Sony would not be happy if every PS3 game was delayed by 2mths!).

Editied out ground already covered.
 
Last edited by a moderator:
This (the ps3 lead part) is highly controversial and have been already widely discussed in this thread.
You should read some pages ago ;)
 
Also, these problems aren't really platform specific, both consoles have multi million exclusives that have no AA, or, no AA and sub HD resolution, slow downs, or any number of problems.

Yes, exactly! If you try implementing a very high vertex game with 4xmsaa and no predicated tiling on 360, you will have a problem. If you try making Grand Theft Post Processing on 360 where you have 25 different post process passes each one needing a resolve, you will have a problem. Both machines have problems, and in some cases very similar problems. But...the automatic "lazy port" claim when for example Fallout 3 on 360 has msaa and the PS3 version doesn't is just silly. The "Lazy Port" flowchart has literally become:

1) Locate game with performance problems and/or design compromises.
2) If there is no 360 equivalent of said game, then goto step 10
3) If performance/design problems are the same as the 360 version, goto step 20.
4) Goto step 30.
10) Great job! All performance consequences are deemed ok and/or not noticeable. END
20) Good job, but clearly the game could have been better if the PS3 was actually used. Maybe the coders won't be quite so lazy next time. END.
30) What a crap port, damn coders must be at the beach drinking mai tai's. END.


Probably, although I'm not sure where. I haven't actually noticed 'old-fashioned' particles at all, though there are potentially particles in one track maybe. I probably just haven't noticed.

You won't notice it on the pic you provided, it's easier to spot on large area particles and while in motion because you will see shimmering. We were arguing just yesterday if the typical user would even notice. Incidentally, I think they made the correct choice to leave them pixelated on Motorstorm 2. 60fps is more important than a particle artifact which many won't spot anyways. Likewise, there's ways to mitigate the artifacts but on a 60fps game it's not worth spending the extra cycles. So yeah they totally made the correct design choice. Of course....if there were a 360 version that didn't exhibit those artifacts, you'd probably see a thread here with 8000% magnified screenshots and people crying foul that the team didn't spend any time "properly optimizing" the PS3 version.

EDIT: Posted this before seeing your comment Shifty. Feel free to use your modhat of +30 pain to delete stuff.
 
Last edited by a moderator:
...the automatic "lazy port" claim when for example Fallout 3 on 360 has msaa and the PS3 version doesn't is just silly. The "Lazy Port" flowchart has literally become:

1) Locate game with performance problems and/or design compromises.
2) If there is no 360 equivalent of said game, then goto step 10
3) If performance/design problems are the same as the 360 version, goto step 20.
4) Goto step 30.
10) Great job! All performance consequences are deemed ok and/or not noticeable. END
20) Good job, but clearly the game could have been better if the PS3 was actually used. Maybe the coders won't be quite so lazy next time. END.
30) What a crap port, damn coders must be at the beach drinking mai tai's. END.

...

EDIT: Posted this before seeing your comment Shifty. Feel free to use your modhat of +30 pain to delete stuff.

I couldn't resist the OT jab... but gosh I really had a brain pause upon seeing the spaghetti, branching, BASIC/assembly-like p-code you wrote above! Ahh... sweet memories.

Back OT about multiplatform dev issues. I wonder how the Community Based games initiative on XBL will change things as this means more and more people will become familiar with developing for the 360 vs. any other platform. It's ridiculous how easy it is to deploy software from your PC to the 360 for $99 per year. So, far, I've just deployed some stupid simple sample programs from my school days of the "game of life" and "tic tac toe" sort just to see how easy it was to port from the old Borland Pascal versions to C#/XNA. It took about 2 hours for both... and I have never programmed in C# before. I was also an idiot and didn't read the part about having to download the XNA Community thing from Marketplace on the 360.
 
Last edited by a moderator:
I think it's a good thing for the industry as a whole to train more people in CG, even if using MS specific tools.
As long as PS3 economics works, you'll find some people specializing in it -- though not as common as PC-ish architecture.

From Sony's perspective, they clearly want more expertise on PS3. They will have to launch their own initiatives if they don't want to fall behind in this crucial area.
 
1) Locate game with performance problems and/or design compromises.
2) If there is no 360 equivalent of said game, then goto step 10
3) If performance/design problems are the same as the 360 version, goto step 20.
4) Goto step 30.
10) Great job! All performance consequences are deemed ok and/or not noticeable. END
20) Good job, but clearly the game could have been better if the PS3 was actually used. Maybe the coders won't be quite so lazy next time. END.
30) What a crap port, damn coders must be at the beach drinking mai tai's. END.
Dude, your code is bogus, if there's no 360 equivalent, it'll execute 10,20 _and_ 30. You obviously didn't spend enough time optimising it for the PS3 ;)

DOH! I must be on the beach drinking mai tais. I didn't see the END at the end of the statements. I apologise, your code is awesome.
 
Last edited by a moderator:
Dude, your code is bogus, if there's no 360 equivalent, it'll execute 10,20 _and_ 30. You obviously didn't spend enough time optimising it for the PS3 ;)

Damn you, you noticed it in the meantime.

This is how I started coding by the way - typing in numbered listings like above that I didn't understand and hunting typing errors I made that ruined the program. :D On the Atari 800XL by the way. Then slowly learning coding and writing my own word-tutoring software, with huge data lists that ended up taking 10 minutes to load from Tape and then running out of memory (stupid 48k machines :D)
 
Well I just read all 51 pages of this topic and I have a few questions and comments.

1. We see many PS3 games (MGS4, DMC4) which use temporal AA, do any 360 titles use this form of AA?
If not, why? Wouldn't games like Halo 3 with no AA, benefit from temporal AA, which doesn't tax memory like traditional AA.

2. Killzone 2 is the PS3's current poster boy with regards to graphics. Is this mainly due to its use of deferred rendering, which helps it stand out amongst other PS3 exclusives/ports by playing to the PS3's strengths?
ie using deferred rendering, helps negate the PS3's memory disadvantage to the 360, due to its more efficient rendering process (as you're only shading the visible portions of the scene)

If this is the case is Deferred Rendering a viable option on the 360? Has it been done before (not just deferred shadows as in UE3), is it more optimal than forward rendering on the 360?

3. Tiling on the 360, is this more or less the best method of rendering for the system, (as it allows the 'free' AA benefits of the 10MB edram).
Why don't more 360 titles, both multiplatform and 1st party titles like Halo 3 use it.
Is it significantly harder to implement? Or does using tiling make PC/PS3 ports harder, and is ditched?

4. I own both consoles, but the PS3 is usually relegated to playing exclusives and as a media player (thanks to the ability to copy videos to the HDD). To me the 360 controller is as much as a factor in deciding which platform to get a game for, as are the visual differences between versions.

I also feel that there is a 'halo' around the PS3, created partly by Sony's PR department, and upheld by the gaming press/ PS3 fanboys. This causes things like 'lazy PS3 dev complaints', and also forces devs to cover for the PS3 eg. by stating during interviews that both versions of their game are the same and it also skews development time to optimise the PS3 version of a game to ensure parity

In that respect MS is not really getting a fair deal, as devs will not optimise the 360 version as much as possible, as the public perception of the PS3 forces them to keep things as even as possible, to prevent buyer backlash.

MS is not helping things either, by closing or selling its internal studios, and relying solely on third party devs to showcase the 360's capabilities (ie GoW, COD4, GTA4 etc)

Aside from Rare, MS severely lacks the first party support needed for 360 exclusives to make the same impact their PS3 counterparts do.

Where is the 360's Killzone 2? What ground-up 360 exclusives are showcasing the hardware? It might be VP2/BK3 but to the majority of people GOW2 will be picked as the best looking 360 game, and the problem with that is that next year UT4 will match its graphics on PS3.

The dearth of technically excellent 360 exclusive devs is MS's biggest problem on the graphics front.
 
1. According to this list, no.
http://forum.beyond3d.com/showthread.php?t=46241

2. This is _multiplatform_ thread, Killzone is still in dev and we haven't been able to play it yet. But... In most cases only some part of the rendering is deferred. There was a whole separate discussion about DR in KZ2 if you need more info on KZ2 DR. And that's clearly not about multiplatform development. And yes, DR is also possible on 360. There's even an XNA sample for that. Some info about CPU/GPU usage in DR in KZ2 is here:
http://www.guerrilla-games.com/publications/dr_kz2_rsx_dev07.pdf
I _strongly_ suggest starting separate thread on PS3 development. You're clearly interested in it, not in the multiplatform development.

3. Tiling is painful. Does that answer your singleplatform development question? The problem with discussion about tiling is that games are _not_ about awesome numbers and buzzwords. They are entertainment business. If 95% of gamers won't see the difference between sub-HD res and HD res with tiling, why bother? I'd rather see some extra resources on stuff that makes games fun. Like less bugs. I have this feeling that most people would.

4. With every generation of consoles (and outside of console wars) people who opt for something that underperforms are the noisiest ones. Last gen Nintendo fans were on the offense. This gen it's Sony fans. The reason why ppl bring up absurd arguments is because they don't understand stuff. They just accept PR mumbo jumbo and spread it. Another problem is that even if someone reads all the advanced technical stuff, he's still an armchair expert. You have to write code tu understand it and cut "lazy devs" BS. And there are lots of those armchair experts, they're loud and have huge following. If such person is biased, misconceptions will continue to spread.

But again - this has nothing to do with this topic. :???:
 
Yes, mostly number crunching on CELL, in parallel to graphics rendering. How does it fit this thread's subject though?

Just wanted to learn more about the differences. We always hear about Edram just wanted to know what does the ps3 excel at or what do developers find good about the ps3 in a multiplatform environment(we always hear the negatives).
 
It may very well do that. Edram like anything else has finite bandwidth, it's possible to exhaust it. I've already worked on one title that had to use a 1/2 size particle buffer on the 360 version, and Lost Planet, being an orgy of overdraw, possibly had to do the same. Now if a game can exhaust edram, you can imagine the toll it extracts on non-edram memory! To keep the same performance I had to use a 1/16th size particle buffer on the PS3 version of the title I worked on, but I did add an extra post process step on the PS3 version to help reduce particle artifacts. Motorstorm 2 would not need a downsized particle buffer as their transparent overdraw is minimal.

This can't just be a bandwidth problem, because the bandwidth from the GGDR3 to the RSX is far from 1/16th of the bandwidth from the GDDR3 to the EDRAM. Couldn't you use the XDR memory controller on the RSX to help boost bandwidth if its such a problem?.
 
This can't just be a bandwidth problem, because the bandwidth from the GGDR3 to the RSX is far from 1/16th of the bandwidth from the GDDR3 to the EDRAM. Couldn't you use the XDR memory controller on the RSX to help boost bandwidth if its such a problem?.
(1/2) / (1/16) = 8, not 16, and if he's using FP10 for 360 and RGBA8 is insufficient for PS3 then he has to resort to FP16. Now he's blending 8 pix/clk on 360 and quite possibly 1-1.5 on PS3. That fully warrants reducing the blending load by 8x, particularly if the rest of the rendering is a bit slower too (say, due to setup speed).

Of course, my reasoning could be completely wrong, but it shows you how joker454's results aren't unreasonable.
 
Just wanted to learn more about the differences. We always hear about Edram just wanted to know what does the ps3 excel at or what do developers find good about the ps3 in a multiplatform environment(we always hear the negatives).

Might want to ask in a PS3 specific thread.

Bear in mind that visual is only part of the experience. Sound, physics, input, AI, etc. are also integral parts of a game.
 
This can't just be a bandwidth problem, because the bandwidth from the GGDR3 to the RSX is far from 1/16th of the bandwidth from the GDDR3 to the EDRAM. Couldn't you use the XDR memory controller on the RSX to help boost bandwidth if its such a problem?.

He couldn't use the xdr. If I recall a slide right the rsx can only talk to the xdr ram in the MB/s not GB/s range. I highly doubt that would be enough.

The other thing to think about is 720p fp10 with no fsaa would fit into the edram with 3mb left to spare. So you'd basicly be able to feed the rops with the 256GB/s on the internal edram portion of the die.


The edram is a monster for the xenos. Thats why in other threads talking about future chips I don't know why people think ms would drop it.
 
He couldn't use the xdr. If I recall a slide right the rsx can only talk to the xdr ram in the MB/s not GB/s range. I highly doubt that would be enough.

You recall it totally wrong, it is Cell who can access the GDDR3 in the MB/s range.
I strongly recommend you to look up everything about the PS3 before posting, in the Sony financial report Q2 2008 thread you hardly got a figure right concerning anything PS3 related.
 
Well I just read all 51 pages of this topic and I have a few questions and comments.

1. We see many PS3 games (MGS4, DMC4) which use temporal AA, do any 360 titles use this form of AA?
If not, why? Wouldn't games like Halo 3 with no AA, benefit from temporal AA, which doesn't tax memory like traditional AA.

Forza 2 definitely did, at least initially. Not sure if its still like that.

2. Killzone 2 is the PS3's current poster boy with regards to graphics. Is this mainly due to its use of deferred rendering, which helps it stand out amongst other PS3 exclusives/ports by playing to the PS3's strengths?
ie using deferred rendering, helps negate the PS3's memory disadvantage to the 360, due to its more efficient rendering process (as you're only shading the visible portions of the scene)

I was about to mention Killzone as an example where you can see that joker's point about first party titles is valid, insofar as that at least early versions show some blur happening at lower resolution showing probably a bandwidth limit.

If this is the case is Deferred Rendering a viable option on the 360? Has it been done before (not just deferred shadows as in UE3), is it more optimal than forward rendering on the 360?

This has actually been discussed before. It seems to be harder on the 360, because of the way tiling works and the limits there are on using the EDRAM, and the combination of the two. If I remember correctly, one of the reasons is that you need to get the image back from the EDRAM for some parts of the pipeline.

Now if I understand it correctly, if you would use deferred rendering, you would need more movement to and from the tiled EDRAM. There is an issue with the Unreal Engine in this respect, which because part of its pipeline is deferred, can't use EDRAM/Tiling to the fullest, which is why only just now the first UE3 games are starting to get some AA (usually no more than 2xAA).

3. Tiling on the 360, is this more or less the best method of rendering for the system, (as it allows the 'free' AA benefits of the 10MB edram).
Why don't more 360 titles, both multiplatform and 1st party titles like Halo 3 use it.
Is it significantly harder to implement? Or does using tiling make PC/PS3 ports harder, and is ditched?

There are different things at play here. One is my point above, but early on Tiling wasn't well supported in the devtools. And for Halo 3 you also have to understand that they probably had to lock down on the rendering engine early, and so decided to go for extra color depth instead.

:skipped a whole bunch that is too off-topic and inflammable:
The dearth of technically excellent 360 exclusive devs is MS's biggest problem on the graphics front.

Let's just simply say here that your biggest strength is often also your biggest weakness. Very early on, it was surmised that Sony's hardware and software strategy would eventually lead to more games that would make the most of the hardware, favoring PS3 exclusive development. On the other hand, the 360's approach was considered to bring in more and better multi-platform support.

I think we're starting to see rather clearly that both strategies work, but for now the 360's works better. As we are getting further in the cycle Sony's strategy is paying out more, but already it is clear that the 360's approach was the smarter one in terms of gaining market-share (and that Nintendo outsmarted them both). I personally feel that the PS3 is getting the better exclusives, just as I expected, but this is a purely personal opinion not worthy of discussion here, only at best if we can determine that the PS3 exclusives show that PS3 ports only stay behind because of multi-platform development issues, and not because the titles can't be done on the hardware in principle.
 
(1/2) / (1/16) = 8, not 16, and if he's using FP10 for 360 and RGBA8 is insufficient for PS3 then he has to resort to FP16. Now he's blending 8 pix/clk on 360 and quite possibly 1-1.5 on PS3. That fully warrants reducing the blending load by 8x, particularly if the rest of the rendering is a bit slower too (say, due to setup speed).

Of course, my reasoning could be completely wrong, but it shows you how joker454's results aren't unreasonable.

Ah makes sense, thanks for that explanation. Is there any advantage when using deffered rendering?, because it seems that KZ2 has a rather large amount of particles and they are using what seems to be a half size buffer.
 
Status
Not open for further replies.
Back
Top