XBox games use custom NV extensions to the shader language, and the Direct3D APIs on the XBox expose h/w functionality in the NV that doesn't exist on other platforms. If desired, a game can go so far as to manually create the command code byte stream to feed the NV GPU. Almost all games have the shaders compiled into NV-specific byte-code.
Once you move past the PC DirectX abstraction, the NV and ATI hardware are not that similar.
DirectX hides the hardware from the developer and with the XBOX being relatively overpowered for the current console generation its unlikely many low level optimizations were necessary for any of the current games.
Completely wrong. While the video hardware is pretty buff for a console, the CPU demands on geometry processing and the legacy nature of many PC source engines ported to the XBox means you have a lot of non-standard APIs in use to get good performance out of the box, and these non-standard APIs for both the graphics and audio are directly tied to the behavior of NV hardware.
On the XBox, h/w abstraction was thrown out for the needs of performance and making the games on XBox not look like cheesy PC games without a keyboard...
No game written for the XBox runs on a 'pure DirectX' implementation. The XBox libraries do not include DirectInput at all, and use custom APIs instead. DirectPlay doesn't exist, and instead a custom WinSOCK API is used. Direct3D is an 8.0 API with custom functions, and the shader languages have NV-specific instructions. The 'best practices' for the XBox means a lot of things that are not possible on PC DirectX.
In short, the libraries for the XBox are intended to be familiar and somewhat source compatible, but any production XBox game is far from that and would be incredibly difficult to duplicate on a binary level.
Actually, the XBox version of DirectX (specifically Direct3D and DirectSound) are highly optimized for the h/w in use to the point that the API is not compliant with any PC version of DX. Many features of the NV hardware that are abstracted or hidden on the PC are explicitly used by games on the XBox.
With the exception of the PS2 and GBA, no console in history has had full backwards compatibility. This is more of a technological trick than a demanded feature. Who wants to play an old PS1 game on their PS2 if there are more compelling PS2 games available?
Since the XBox Next isn't going to use an nVidia graphics/audio chipsets, that pretty much nukes any chance of backwards compatibility. XBox games are written with many assumptions and nearly direct communication with certain aspects of the graphics (and sound) hardware. Add the fact that they are tuned for a fixed Intel P3 CPU running at 733 Mhz with MMX/SSE instruction support, and you'll have a hell of a time simulating exactly this behavior on a PowerPC core.
And really, if XBox 1 had that many compelling games it would be doing better. Any title that is worth a damn on the XBox that the marketing boys care about will get redone for XBox Next.
What will determine if the PS3 or XBox Next or Nintendo is a market success will be the next-gen GAMES.
I only wish M$ had a clue what the hell they were doing in the game industry (in terms of marketing) because working on the XBox hardware is a thousand times easier than the PS2 (to the point that many studios cannot get gigs doing PS2 games because they are so damn hard to write), and all indications are that the PS3 is even harder.
Once you move past the PC DirectX abstraction, the NV and ATI hardware are not that similar.
Completely wrong. While the video hardware is pretty buff for a console, the CPU demands on geometry processing and the legacy nature of many PC source engines ported to the XBox means you have a lot of non-standard APIs in use to get good performance out of the box, and these non-standard APIs for both the graphics and audio are directly tied to the behavior of NV hardware.
On the XBox, h/w abstraction was thrown out for the needs of performance and making the games on XBox not look like cheesy PC games without a keyboard...
In short, the libraries for the XBox are intended to be familiar and somewhat source compatible, but any production XBox game is far from that and would be incredibly difficult to duplicate on a binary level.
Actually, the XBox version of DirectX (specifically Direct3D and DirectSound) are highly optimized for the h/w in use to the point that the API is not compliant with any PC version of DX. Many features of the NV hardware that are abstracted or hidden on the PC are explicitly used by games on the XBox.
Since the XBox Next isn't going to use an nVidia graphics/audio chipsets, that pretty much nukes any chance of backwards compatibility. XBox games are written with many assumptions and nearly direct communication with certain aspects of the graphics (and sound) hardware. Add the fact that they are tuned for a fixed Intel P3 CPU running at 733 Mhz with MMX/SSE instruction support, and you'll have a hell of a time simulating exactly this behavior on a PowerPC core.
And really, if XBox 1 had that many compelling games it would be doing better. Any title that is worth a damn on the XBox that the marketing boys care about will get redone for XBox Next.
What will determine if the PS3 or XBox Next or Nintendo is a market success will be the next-gen GAMES.
I only wish M$ had a clue what the hell they were doing in the game industry (in terms of marketing) because working on the XBox hardware is a thousand times easier than the PS2 (to the point that many studios cannot get gigs doing PS2 games because they are so damn hard to write), and all indications are that the PS3 is even harder.