Originally Posted by Lotus
Im going to let my wife who programs for both lay it down for you on why the 360 is superior in graphics and how the PS3 just can't compete:
For starters lets understand why the PS3 was designed less powerfully:
MicroSoft lied. MS announced numbers for their GPU and made a claim of 48B shader operations per second. They released this data and other data without mentioning the full capabilities of the system. The 360 can actually handle 96B shader operations per second. The unified shader architecture used by the 360 is revolutionary and when combined with EDRAM and 3DLogic the 360 is capable of things the PS3 or any PC video card could ever approach. By keeping the actual performance and the unified design a secret Sony had no idea what they were truly going up against.
The GPU contains a daughter die with 10MB of EDRAM with a framebuffer bandwidth of 256GB a second. This is 5 times more powerful than the PS3 or all but 2 video cards for the PC. The 360 unified shader is so efficient that with the EDRAM it is able to obtain 4XSFAA without hindering the GPU or system at all. There is no bottlenecking going on.
The EDRAM also has the aforementioned 3DLogic system which is 192 FPUs. It exchanges data with the 10MB of ram at 2TB per second. So all occlusion culling, antialiasing, and z depth computations are done without taxing the GPU at all.
Bandwidth intensive tasks are a major problem in developing. If you used the EDRAM and 3DLogic correctly you eliminate the problem. Once developers started using these options we came to realize what a major disadvantage the PS3 was at in bandwidth. Plus it helps with memory usage.
What does this mean in memory? A 1080p game with 4XSFAA takes up 24MB of RAM on the 360. On the PS3 it would take up 42MB of RAM thus making it not an option. When that much data is being thrown around the bandwidth issue comes up. This is the reason why the 360 has such better frame rates than its PS3 ported counterpart. There are ways around this and generally it's done by lowering the resolution to 480p. Then we use the backbuffer to upscale the image back to 720p or 1080p.
On the game we're designing from the ground up on the PS3 we're not even using 4XSFAA because of the problems.
Lets talk pipelines so you understand just what unified shading is all about. Your standard video card and the PS3 have dedicated pipelines to handle either vertex or pixel situations. The 360 has 48 unified pipelines. In many circumstances some vertex or pixel pipelines aren't being used at all because the game has a pixel heavy or vertex heavy moment. The 360 will never have an idle pipeline. How much better is it? In a vertex heavy situation the 360 is 6 times faster. Its efficiency means it can actually do what it claims it is capable of on paper. There is no propaganda math involved here. This is not a slight of the PS3 but all video card numbers generally advertised. For instance the 7900GTX has an advertised peak fill rate of 15.6 Gigasamples per second. It can't actually obtain and then sustain that number. The 360 can. It does so because of its amazing efficiency.
So far most developers have yet to take full advantage of the 360 GPU. We're all still learning the little tricks. True 1080p gaming is the goal and the only console currently in production that is actually capable of it is the 360. The PS3 doesn't have the efficiency to reliably create a full 1080p game. So we cheat to obtain the resolution. The 360 on the other hand is able to have a game designed with 1080p in mind. However most developers aren't doing it because we have to port it over to the PS3. So we end up making 720p games but make it capable of being displayed at 1080p. We're still a year off from seeing a game fully designed to take advantage of the 360's graphical capabilities.
The 360 has other advantages like its L2 cache being twice the size. It has 3 times the number of PPEs. The 360 is capable of creating enemy AI that is far advanced to the PS3. A real world 80GFLOP to 65GFLOP advantage.
The PS3 has a Cell Processor. This consists of one PPE and 8 SPEs. When you look at the capabilities of the Cell you're immediately impressed with Sony's numbers. The problem is that the 8 SPEs aren't available. You only have access to 5. The System saves one for redundancy and 1 for the OS. However a further SPE can be taken by the OS at any time so you're only safe to program for 5 of them. SPE and PPE don't use the same toolsets either. So it's extremely difficult to program well for.
What can the PS3 do better? Well a smart development team would apply an SPE for unique tasks. This would allow particle simulation, water simulation, cloth physics, animation, and collision physics for instance. Physics in general could be programmed in circles around the 360. So a more realistic physical environment can be created for a game. If someone is looking for a realistic racing game, if the SPEs were fully taken advantage of you could end up with an amazingly realistic simulation. The PS3 also excells in vertex application. The Cell can handle these much better than the Xenon core of the 360.
If my team was allowed to design the ultimate game for either machine what could you expect?
For the 360 you'd get a stunning visual experience with amazing enemy AI and game play would be top notch. For the PS3 you'd get a realistic physical environment that would interact as the environment should with amazingly realistic looking movements by everything from people to falling objects to how the clothes move on bodies.
So just because the 360 is graphically superior it doesn't mean the PS3 can't be used to create its own unique experience that the 360 couldn't possibly try to match. It just won't be graphically superior. The PS3 is still bogged down by an old inefficient design that wasn't meant for full 1080p game design. This doesnt mean it cant be made to look really good.
Now you are talking laguage that I know (as an A+ Technician) and you are speaking volumes. This why some 256mb video cards out perform 512mb video cards because they can't access the other 256mb of ram - making it of no real use.