here is the reason I was mentioning, which was so hostilly flamed upon and people thought it was false, Neo Seeker's Interview with David Kirk, chief engineer at Nvidia
Neoseeker: Branching and looping are new introductions into PS3. One feature of pretty much every programming language is the ability to branch and loop. It was mentioned that the Nalu demo uses a single shader for the both the skin and scales. If you were to have had to write Nalu in PS2 what would have been the challenges that the developer would have had to overcome in terms of language limitations (we'll ignore the instruction limit for now).
David Kirk: Without branching and looping in complex shaders, each branch path or loop pass has to be rendered as a separate pass, with alpha test to suppress the pixels that shouldn't be rendered in that pass. Consequently, without Shader Model 3.0, Nalu would have been 1/2 or 1/4 the speed, as well as lower quality.
Neoseeker: In this next generation that NVIDIA will be the only company supporting PS3. One of the goals for common APIs like DX and OpenGL are to abstract hardware details from developers. Obviously there is a bit of a divergence in terms of hardware capability. With pressure to finish games relatively on time especially for smaller development houses, what is your view on support for architecture unique features like PS3 instead of just PS2 support? Are developers going to make the effort to support PS3 over PS2 as it will arguably limit their market.
David Kirk: Anything that can be programmed in PS 2.0 just runs in PS 3.0 with no changes. It just runs faster, and looks better. Anything that can be programmed in PS 3.0 can be converted into multipass versions for PS 2.0. It just runs more slowly and looks less good. Developers always support the high end and most advanced API and effects, because it's their marquee demo. They want their game to look as cool as possible. Dumbing down the shaders to run on PS 2.0 can be accomplished in the same way as lower end, older generation hardware has always been supported. The developers creates a simplified path for older hardware. Developers do that now, to support DX8 hardware, and this is even easier. The best analogy is back to when multitexture was introduced. You could make the same effects with more passes - it was just slower. It was also easy for developers to create both paths.
Neoseeker: How difficult is it to port PS2 shaders to PS3?
Dead easy. They just run, without modification
<A HREF="
http://www.nvnews.net/cgi-bin/archives.cgi?category=1&v..." target="_new">
http://www.nvnews.net/cgi-bin/archives.cgi?category=1&v...;/A>