RSX and DX10

Sorry to create such a useless thread, but I remember somewhere reading about a certain function that the RSX supports that would be similar / is the same as a function in DX10, what is that function?..

Sorry about my vague nature I can't remember much.

I have searched and searched and come up with nothing by the way.
 
Sorry to create such a useless thread, but I remember somewhere reading about a certain function that the RSX supports that would be similar / is the same as a function in DX10, what is that function?..

Sorry about my vague nature I can't remember much.

I have searched and searched and come up with nothing by the way.

Geometry shading? You have to remember that DirectX is an API, and imposes constraints regarding how you access things. With direct GPU control, RSX can handle many of the DirectX 10 features, and more.
 
Geometry shading? You have to remember that DirectX is an API, and imposes constraints regarding how you access things. With direct GPU control, RSX can handle many of the DirectX 10 features, and more.

:!: Really?, how does the API used give direct control compared to DX?... And is there any way to find out what features the RSX supports?.

EDIT: Also how the hell can it do geometry shading?, it doesn't have a geometry shader, or can the same thing be achieved through the pixel/vertex shaders in OGL?.
 
Someday i read here and others forums devs about RSX has 2 extra shaders instructions ( and more normalize instruction or something like that)if compared with G70/71,but i dont read nothing especific about DX10/shaders 4.0.

(but in consoles Api is most important thing like pc counterpart?)
 
Last edited by a moderator:
And the other half of the discussion came from the developers who pointed out that DX9 and DX10 are a layer above hardware, and that some of the hardware that we associate with DX10 is already available for low level programmers as you find on consoles, where RSX for instance does not need to be accessed through DX9 and where you can go as to the metal as you like, because there's only that one graphics card to worry about in terms of compatibility.
 
And the other half of the discussion came from the developers who pointed out that DX9 and DX10 are a layer above hardware, and that some of the hardware that we associate with DX10 is already available for low level programmers as you find on consoles, where RSX for instance does not need to be accessed through DX9 and where you can go as to the metal as you like, because there's only that one graphics card to worry about in terms of compatibility.

Not to mention that Direct X is a Microsoft hardware vendor requirement for their Dx API software, its pretty meaningless and archaic and it severly limits what a game developer can do.

Sony's PS3 GPU, the RSX is thankfully free from having to use such a silly API like Direct X, its really only usefull in a Windows gaming enviroment and as such is the reason why the XBox 1 and XBox 360 was made, to make console ports to PC easier and guarrantee that PC gamers get more games as for porting back PC to Console, we all know PCs are spoiled with gobs of memory so devs hard to take those things in consideration by compressing, etc.

Also please forget about Direct X capabilities, they do not matter when it comes to PS3 mainly because you can expect dev tools to be far more efficient at using the hardware for platform specific games as was the case with the PS2.
 
Geometry shading? You have to remember that DirectX is an API, and imposes constraints regarding how you access things. With direct GPU control, RSX can handle many of the DirectX 10 features, and more.

Well thats not strictly true otherwise you could claim that the G7x series GPU's are DX10 (or almost) simply with the application of a new API (DX10).

DX may be an abstraction layer not directly related to the hardware but the featureset of a PC GPU aimed at that DX generation will match it failry closely as far as i'm aware. There's little motivation to include more hardware functionality than will ever be exposed by your target API afterall!
 
A DX10 part means it includes hardware acceleration/support for features exposed through the DX10 API. In the context of a console that doesn't run the DX API, the DX level is kinda meaningless, although the DX level of the GPU can be determined in terms of what hardware features it has to support what level of DX API. RSX is a G70 derivative that supports hardware acceleration up to DX9's features. A G70 given DX10 software will not be able to executive some of the required (DX10 specific) functions.

I refer interested parties to my earlier post on the subject of DirectX and consoles...
http://forum.beyond3d.com/showpost.php?p=1024663&postcount=39
 
It's not about DX10 in the case of RSX,
but rather, Shader 3.0 vs Shader 4.0

RSX adheres closely to the Shader 3.0 spec, AFAIK.

other than minor tweaks, the RSX is basicly the same as G7x
and does not have the Shader 4.0 features that G80 has.
 
A DX10 part means it includes hardware acceleration/support for features exposed through the DX10 API. In the context of a console that doesn't run the DX API, the DX level is kinda meaningless, although the DX level of the GPU can be determined in terms of what hardware features it has to support what level of DX API. RSX is a G70 derivative that supports hardware acceleration up to DX9's features. A G70 given DX10 software will not be able to executive some of the required (DX10 specific) functions.

I refer interested parties to my earlier post on the subject of DirectX and consoles...
http://forum.beyond3d.com/showpost.php?p=1024663&postcount=39

It's not about DX10 in the case of RSX,
but rather, Shader 3.0 vs Shader 4.0

RSX adheres closely to the Shader 3.0 spec, AFAIK.

other than minor tweaks, the RSX is basicly the same as G7x
and does not have the Shader 4.0 features that G80 has.

Thanks to both of you. I understand it now.

And the other half of the discussion came from the developers who pointed out that DX9 and DX10 are a layer above hardware, and that some of the hardware that we associate with DX10 is already available for low level programmers as you find on consoles, where RSX for instance does not need to be accessed through DX9 and where you can go as to the metal as you like, because there's only that one graphics card to worry about in terms of compatibility.

I would like to know more on this though, I presume what he is talking about are features that they lay dormant in the RSX because DX9 didn't include them?, but can be accessed on a console because you are only coding for one card on a closed system.?.
 
I would like to know more on this though, I presume what he is talking about are features that they lay dormant in the RSX because DX9 didn't include them?, but can be accessed on a console because you are only coding for one card on a closed system.?.

Yes, that's pretty much how it works. However some things that are accessible only in a console aren't necessarily features per-se, but simply a consequence of not having to go through layers of abstraction. For example, in DirectX there's no direct method of accessing the z-buffer but on console its no problem because you can just treat it like you would any other texture memory. Accessing pre-resolved samples of a multi-sampled buffer is also something that can only be done in DX10 on the PC side, but is possible on a console.
 
Something i would like to know as opposed to DX10 or not is what kind of extra instructions that can be applied on the RSX. Is there alot of work to expand the current API on the RSX for more effects? Since the hardware is fixed i'd think they could make alot of extra functions avalible to devs. On wiki it says RSX uses Ogl ES as an API, would they expand on it's feature set?

I think alot of people are curious about what can be done on the RSX compared to the chip it is based on when devs can focus on it and extract every bit of performance.
 
Accessing pre-resolved samples of a multi-sampled buffer is also something that can only be done in DX10 on the PC side, but is possible on a console.

So does that mean that the G7x GPU's (and other DX9 GPU's) actually have greater functionality on the PC under DX10 as opposed to under DX9?
 
I think you might be thinking of some query a developer (IIRC) mentioned that was in the RSX API that wasn't in DX APIs prior to DX10. Can't remember exactly, except that it was a query of some sort.
 
So does that mean that the G7x GPU's (and other DX9 GPU's) actually have greater functionality on the PC under DX10 as opposed to under DX9?

Like I said I'm not really sure if all of it is really functionality (as in, something Nvidia explicitly designed as a "feature"). I don't won't to overstep the boundaries of my own knowledge here since my experience is really limited to PC development in a hobbyist/amateur context, so it would be best if a console developer could explain some of this in further detail.

However getting back to the example of accessing the sub-samples in a multisampled buffer...my *guess* would be that on a console without API's in the way a dev like Guerilla is able to access the samples by treating a 2xMSAA 1280 x 720 buffer as a normal 2560 x 720 buffer through means analogous to a C-style cast operation. Doing this in DX9 would probably be dangerous, since different hardware may have different methods of storing or handling the MSAA buffers as the DX9 spec doesn't require the GPU to provide sub-sample access in a standardized way. However on PS3 this is no problem, because you could just look up the section on multisampling in your RSX documentation and know that it will never be any different. But again, I'm just really making an educated guess here based on my own (limited) understanding of how graphics API's work. If I'm grossly wrong on anything, I apologize for misleading anyone and would appreciate being set straight! :smile:
 
So does that mean that the G7x GPU's (and other DX9 GPU's) actually have greater functionality on the PC under DX10 as opposed to under DX9?

Even if they did, it's irrelevant, they can't use DX10 no matter what, the runtime requires the support for the API, which they lack.
 
Back
Top