@Raven
"This isn't just about with Patch4!! Patch4 doesn't even alter how the Shaders are being used for one ... so unless they didn't work in patch 3.1 of course they will work in path4 - that statement itself is just stupid on its own."
Quote: "Fixed a long standing vertex shader bug which prevented the forth float to be used in the shader in SET V.S VECTOR"
Apparently it's not so stupid after all.
"ofcourse the "PIXEL SHADER EXIST()" command won't detect more than 1.3 on a GeForce card IF its DirectX9 and Drivers 43.00+ which add this support - seeing as DirectX9 isn't intergrated into DBpro only DirectX8.1 then geez i'll put my big shocked face on!"
PS 1.4 is part of Directx 8.1 NOT 9 therefore it should register if my hardware is capable of supporting it.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dx8_c/directx_cpp/intro/dx8whatsnew.asp
Quote: "New Features in DirectX Graphics
Expanded pixel shader functionality with new version 1.2, 1.3, and 1.4. "
"i swear ya'll are just skimming through whats written showing a bunch of documents over and over about what there is to backup claims you make?
yet you quite clearly don't have any understandings of the pipelines of these cards even slightly.
if you notice the MAJOR difference in the pipeline diagrams i showed is that the GeForce runs a Shader Processor Unit - something which the Radeons DO NOT HAVE!"
The irony. Speaking of someone who "skims over information" did you read my previous link which described the shading unit in the Radeon unit? In case you skimmed over it too quick here it is again.
http://www.ati.com/developer/SIGGRAPH02/GHProgrammability-notes.pdf
And here is the diagram of the Radeon 8500 shading unit:
EDIT: The forum absouletly butchered the diagram. Just follow the link. Its easier.
Vertex Stream VE=vertex engine
| PP=pixel pipeline
|
__|__
| |
| |
VE VE
| |
| |
| |
___|_____|___
|Rasterization| Triangles
|_____________|
| | Pixels
______|_____|______
| | | | _________________
PP<_____PP____PP_____PP____|Texture Samples|
| | <___|______|_____| |
| | |<_____|_____| |
| | | |<____|_______________|
__|______|_____|______|_ Pixels
| Blending |
|________________________|
You continuely claim that radeons don't have a shading processor. I've repeatedly gave you links that proved otherwise but all you seem to do is skip over them. Is this diagram enough or do I have to buy a Radeon, disect it, and ships its guts to? Why do I get the feeling that no matter how many times I show you evidence to the contrary you just stick your fingers in your ears and say LALALALALALA. What is it I have to do to show you that Radeons have shading units and process their shaders on thier hardware? Please speak up and tell me so I can save myself the time of finding things that you'll just ignore.
"the NVSDK Shader Help doesn't have anything on PS 1.4 - not because it isn't supported, but because they don't use it. There is a difference between Using something and supporting it!"
Huh? If they don't use it in their hardware then isn't that not supporting it? If its in their hardware then why is it not mentioned in their sdk? Every other profile is. What other possible explaination is other than its not in their hardware?
"as for OpenGL 1.5 ... OpenGL 2.0 has been being developed since 1.2, because as i've noted 1.3 & 1.4 are mostly nVidia's "
And as I've noted you are wrong. OpenGL is not dominated by one company. As i've shown you before:
Quote: "Industry standard
An independent consortium, the OpenGL Architecture Review Board, guides the OpenGL specification. With broad industry support, OpenGL is the only truly open, vendor-neutral, multiplatform graphics standard."
[href] http://www.opengl.org/developers/about/overview.html[/href]
How can it be vendor neutral when One company alone creates 3 whole versions for itself?
"and quite frankly if you didn't know that and need a piece of paper to tell you such then thats sad."
I could say the same of you.
"The developed support for other cards has been through external drivers like Mesa - as i've said, and 1.5 is being develop specifically for the FX range of GeForce."
Why? Just step back for a moment and look at this from a logical perspective. Whats the payoff? Why would Nvidia invest how knows how much into developing an entire language just for a few graphics cards? Why not just develop extentions from the exisiting OpenGl spec like everyone else? Isn't that as least as effeicent if not cost effective? Now look at this from a developer's point of view. What would you rather write to. A widely compatiable specification that runs on multiple graphics cards or a narrow one that runs on just three or four? Which one nets a wider potential customer base? Honestly, all this talk of Nvidia delveloping an entire OpenGl spec just for themselves is ridiculous. I can't find anything on their site to suggest that they are developing 1.5. Not a single newsletter or announce. Nothing. How could you possiblely test something like this when no one knows about it because info for it is so hard to find? Speaking of which, where exactly did you hear about OpenGl 1.5? I'm curious as to how you got wind of this "secret" spec they are developing.
"The only real difference between nVidia taking OpenGL 1.3->1.9 suffrix designations for themselves and 3dfx taking OpenGL and producing Glide"
Glide is dead. What decade are you living in? 3dfx no longer supports glide and they haven't for years. They have completely embraced OpenGL. How have they taken OpenGL and produced Glide? Seriously, where do you hear things like this? Do you care to provide some links to show me that they took OpenGl and produced Glide?
"is that nVidia's OpenGL's are open source which adhears to the mandate of OpenGL"
In order for it to "adhere to the mandate of OpenGL" it would have to pass before the ARB since they are the ones who regulate it. Unless of course you are going to deny the exsistence of the ARB and/or relavence.
"and yes funny you won't hear much about OpenGL 1.5 anywhere except if you're GeForce/Quadro FX owner, because the source and new isn't released until they're done "
Quote: "Additions to the specification are well controlled, and proposed updates are announced in time for developers to adopt changes."
According to the link above developers are notified ahead time so they can adapt to changes.Also...
Quote: "Governance
The OpenGL Architecture Review Board (ARB), an independent consortium formed in 1992, governs the OpenGL specification. Composed of members from many of the industry's leading graphics vendors, the ARB defines conformance tests and approves OpenGL enhancements. Currently the board includes representatives from 3DLabs, ATI, Compaq, Evans & Sutherland, Hewlett-Packard, IBM, Intel, NVidia, Microsoft, and SGI."
Changes to the OpenGl spec can't be made by anyone member. They have to be approved of by the ARB which is composed of the members above. Face it Raven, your wrong on this one. Your going to have a hard time explaining away this one.
"Also... i don't mean a Fragment Shader by Texel Shader, GeForce/Quadro card have something called a Texel Shader Engine Pipeline"
Uh...I have no idea what your talking about.
http://www.nvidia.com/view.asp?IO=IO_20030117_6779
Quote: "The NVIDIA Quadro FX architecture takes application performance to new levels by featuring three parallel vertex engines, a radically new line engine, the industry’s first on-chip vertex cache, and eight fully programmable pixel pipelines coupled to a high-speed DDR2 graphics DRAM bus."
There is no mention whatsoever of any "Texel shader Engine Pipeline."
Why not use just fragments? You can achieve the exact same thing.
"and if you don't the difference between a Texel and a Pixel i'd suggest you do alot more homework here!"
Texel is merely a pixel in a texture and is named such in order to avoid confusion with pixels on screen. Which leads to my earlier confusion with you regarding pixel shaders and "texel" shaders. You can manipulate texels with fragment shaders quite easily. Take this simple Cg code for example:
struct _output {
float4 color : COLOR; //output structure outputs color
};
_output _texture(float2 texcoord : TEXCOORD0, //accepts texcoords
uniform sampler2d decal) //accepts 2d sample from outside
{
_output OUT;
OUT.color = tex2d(decal, texcoord); //samples data(in this case texels)
// at the location indicated
return OUT; //by the texture coordinate set in the
} // sampled object then outputs them to
// the rasterizer.
Essential what it does is access texture coords and out puts them to the rasterizer. Nothing big in fact the graphics hardware will do this for you anyway but my point was that you could access texcoords and the data they point to(texels) with fragment(aka pixel) shaders anyway so why create a special pipeline just for "texel shaders?" It just doesn't make any sense.
"Especially as most cards are capable of producing Texels within the pipelines, however Texel Shader is something which is relatively new and ONLY used within 3D Rendering Packages."
Why? As I stated above you can achieve the same thing with Fragment shaders. Can you site which 3d Rendering Packages use Texel shaders? I'd like to research this further.
"Another point should be made that Render Engines yes use Software Shaders, but they're capable of also using Hardware Shaders too "
Yes and what does this have to do with what I was saying???
"However niether use the CPU in either Renderman, Messiah or Brazil 1.1 (which most will see soon)"
I'm to tired to argue this so I'll just let it slide. I don't care.
"Finally do you understand the difference between a
Hardware Abstract Layer, Rasteriser & RAMP Emulation?"
Yup.
"it seems like both people making the major points here have read some little things and gone through help not actually knowing the technology behind which is what is being used to produce these results - what order they're being produced within and how the Software Drivers are telling the APi system, DirectX in this case howto go about thier calculation routines."
By "both people" do you mean us? Or are you refering to Just ED and I. After all of those links to hardware specs explaining to you how you were in error I can't help but not see how you are not included in this "read some little things and gone through the help not actually knowing the technology behind it"
when you repeatedly ignore everything I say that proves you wrong.
"you just feel like because you've read and can quote the help that you actually have the faintest idea what your going on about "
Thats because I do. If you think otherwise that prove what I've said to be wrong.
"and if i had the time to actually spend a few hours bloody trawling through each of the sites and help files i might actually show quotes from the same texts which could contratry your own quotes."
I won't hold my breath.
"I'd suggest rather than sitting here trying to disprove me you go and put those research skills to some good use and ACTUALLY learn the technology you're trying so hard to defend here"
I have. You on the other hand continue to insist that ATI has no shading processor when I've no less than three times provided a link to a tech paper detailing the very shader processor that you so vehemently deny exists.
"perhaps then you'll relise what your trying to propose is actually impossible for it to pull of the way you believe it is being done."
What exactly is the "way I believe it is being done?" Is it that Radeons execute shaders on their hardware? If it is so "impossible" then why have multiple users posted here claiming to the contrary? What of all the links I provided of
examples to the contrary.
"lastly you mention the CgFX emulation - you've obviously not got very with nVidia Shaders if you're not sure what CgFX is"
I know exactly what CgFX is. What I was questioning is was whether you know what CgFX is. From the sound of what you were saying was that CgFX was
only for emulation. I wasn't sure what you were saying so that was why I asked for clairifaction.
"i mean its on the frontend of the website for it and as you've mentioned the Tutorials for it"
I mean the Cg Tutorial the book, not the downloadable tutorials(I have them too.)
" already i figured you'd downloaded the NV30 Emulator which allows any nVidia card which is comptible with Detonator4 43.01 Drivers or better to Emulate ALL of the Shaders capable on the GeForce FX NV30 ... and it doesn't do it through the CPU either!"
*sigh* Look Raven, if it doesn't run on the cpu what does it run on? The Gpu? If the Gpu then please explain to mean how the GPU calculates instructions that it was never designed to calculate! How would a geforce 4 ti gpu calculate vertex shader 2.0 instructions? How would it calculate setup instructions like defb, and defi? Or how about mova? Or what about macros like abs, crs, expp,logp, lrp, nrm, pow, sincos, slt? Or static flow control instructions like call,callnz, else, end, endif, endloop, endrep, if, label, loop, rep, ret? All of these are new instructions and can not be supported by hardware that wasn't designed to execute them. And this is just vertex shader 2.0. I won't even get into the other shaders. The only way that these can be "supported" is through software emulation like the NV30 emulator which uses the cpu calculate these instructions for the gpu. If the gpu were capable of calculating these instructions then why emulate them? Raven, you drive me up wall!
http://developer.nvidia.com/view.asp?IO=nv30_emulation
Quote: "About the Beta Detonator Driver
In order to use NV30 emulation, you wil need the new Beta Detonator driver (version 40.41) that is available at www.nvidia.com/drivers. This beta driver includes complete support for all currently available NVIDIA products. In addition, it includes emulation support for the upcoming NV30 architecture. Please note that this emulation is slow, since it is performed on the CPU."
"It is still and emulator and they are still software shaders - but i'm sure you can figure out someday how that works."
You are the most stubborn person I have met(other than myself of course).