PDA

View Full Version : Xbox 360 / DX10 ?


SeriTonin
02-02-07, 02:34 PM
For a while now I've been thinking about the API that 360 uses. From what I understand, it is derived from directx9.0c, but also has "limited" instructions for directX 10.

So I've been wondering, if the ati card in the 360 has a unified shader arch and is supposedly dx10 compatible, why can't MS use the hard drive and xbox live service to update 360's to direct x 10??

I understand ps3 runs off of what is essentially a 7800, which is strictly dx9, so the option isnt there for them from what I know, but why cant MS go there?

hazindu
02-02-07, 02:45 PM
The Xbox360's api is custom made to take full advantage of the R500. The latest DX would be of no benefit.

SeriTonin
02-02-07, 02:46 PM
How could it not benefit? If it can support dx10, wouldnt it benefit in the way of new features like pixel shader 4.0, etc.

hazindu
02-02-07, 02:50 PM
DX9c did not enable a geforce 3 to run SM3.0, and DX10 will not allow the Xbox to run anything the hardware doesn't support. The xbox360's api supports all of the chips features already. If the R500 supported SM4, the xbox360's api would have allowed game developers to use it from the very beginning. If not, it can never be enabled. Anyway to slice it, Microsoft isn't holding back on the xbox's capabilities through software.

Lyme
02-02-07, 02:51 PM
Dx9 and Dx10 can be considered a abstraction layer to abstract all the different implementations, etc on the pc. The 360 has simply cut away most of the abstraction layers to the point where they accessing near the hardware itself. As such the 360 graphics api really does not need to change over it's lifespan, excluding the addition of optimized routines.

jAkUp
02-02-07, 02:55 PM
The XB360 GPU is not full DX10, it has some features like a unified shader, some pixels can act as vertex and visa-versa.

SeriTonin
02-02-07, 03:03 PM
I see what your saying now. I understand a g3 wont run sm3.0 =)

I was under the belief that the Ati card was dx10 capable, but it is not. Thanks for clearing that up for me.

Lyme
02-02-07, 06:41 PM
I see what your saying now. I understand a g3 wont run sm3.0 =)

I was under the belief that the Ati card was dx10 capable, but it is not. Thanks for clearing that up for me.

That isn't exactly true, nor exactly false. The 360 gpu built by ati can be considered the first unified shader architecture. As well simply because it runs a modified version of dx9c doesn't mean that it doesn't have the capability to be a dx10 part. The underlying reason for the confusion is that as it is a console only part, it only needs to comply with what the console needs. It is sort of like asking about gasoline engine parts for a diesel, it just doesn't work that way.

But should you be asking the contrived question: If you were to take the graphics parts from the 360 and make a pc video card from them, could it be a dx10 part? Sure.

SeriTonin
02-02-07, 09:34 PM
That isn't exactly true, nor exactly false. The 360 gpu built by ati can be considered the first unified shader architecture. As well simply because it runs a modified version of dx9c doesn't mean that it doesn't have the capability to be a dx10 part. The underlying reason for the confusion is that as it is a console only part, it only needs to comply with what the console needs. It is sort of like asking about gasoline engine parts for a diesel, it just doesn't work that way.

But should you be asking the contrived question: If you were to take the graphics parts from the 360 and make a pc video card from them, could it be a dx10 part? Sure.


Then see, it makes me wonder why they didn't develop it around dx10, I mean they're microsoft, they friggin' MAKE directX, your telling me you can't get it into a console in time for your launch?

Isn't xbox based around dx8 while ps2 and cube engines around dx7? That visual difference is there.

I can't help but feel 360 would have a hell of an edge if it were capable of games like crysis-in all it's glory. It would also help the systems life cycle...

Lyme
02-02-07, 11:55 PM
I don't think it is really that simple. As was mentioned, the 360 is based upon a modified dx9. While I haven't delved into checking that myself, I have no problems believing that it is true. The key to the 360 development in regards to it's graphics api, is that the api while at least loosely based upon dx9c can also have been extended with dx10 functionality. In addition besides the changes in overhead between dx9 and dx10, the shader functionality was somewhat included in the pc version of dx9c. The problem is that these kinds of things get complex really quickly and enter a gray area to boot.

Greg
02-03-07, 12:10 AM
The XBox API will soon support the DX9 and DX10 interfaces. This is mainly for developer portability convenience. The XBox GPU has more features than DX9 but not all features of DX10, so those missing features will be inaccessible. For best performance or flexability, the XBox already has an extended DX interface bypassing much of the familiar Windows DX API.

Zelda_fan
02-03-07, 12:59 AM
regardless of "DX10 compatibility" the 360 can produce DX10 class graphics. Those who doubt, please play Gears of War.

Greg
02-03-07, 09:03 AM
regardless of "DX10 compatibility" the 360 can produce DX10 class graphics. Those who doubt, please play Gears of War.
That is pretty much true. My reading of the DX10 spec shows improvements for efficiency and more flexability (eg. monolithic, single pass shaders, removal of limits all over), but nothing that will actually make a final screen better than DX9. I do have a laugh when I read people talk about how a game 'looks DirectX 10' or not.

gulizard
02-03-07, 09:32 AM
Yeah all DX10 is, is a step up. It runs things smoother, with less cost performance wise. I mean its not going to look any better when some of these games already out put a DX10 patch out. It may run better but it won't look better. However we will see newer games looking better because of how great DX10 is. So they have alot of head room.

Lyme
02-03-07, 11:01 AM
DX10 from a technical standpoint has a large number of easy of use improvements over dx9c. DX10 has a unified shader architecture, so you don't have to mess with different sets of commands and restrictions between vertex and pixel shaders. It has lower overhead for bulk commands. It has done away with cap bits, ie: you support everything in the specification or your not dx10 compliant. As well as many other improvements. Please note I am not a games developer, I just keep aware what is going on in the industry.

As to the "I need the newest version of this api to make things look better", ultimately that line is and always has been hogwash. Like many other fields of study, once you have been given the basic building blocks anything is possible. Having better refined tools to do the job, simply makes the job easier and more efficient. Which is why there was no visible difference between shader model 2.0 and 3.0, even while the same thing is made easier to develop in the 3.0 model.

SeriTonin
02-03-07, 06:17 PM
Thanks for explaining things and not flaming me for it in the process =-)