@RobK
"How he can write that and keep a straight face I just don't know."
Arrogance and sheer stubborness would be my best bet. I'm sure he honestly believes that he is right all the time about shaders and I'm wrong despite the Mount Everest of evidence to the contrary that I throw at him. Good thing I argue with him for my own amusement otherwise this would get boring after awhile.
@Raven
"This is just bloody stupid."
The only stupid thing here is your ridiculous claims.
"OpenGL DOES NOT SUPPORT these Shader Specifications.
THE GRAPHICS CARD DRIVERS DO!"
I'd like to point out the extremely obvious once more.
Quote: "Through the power of the Microsoft® DirectX® 9.0 Shader Model 3.0 and OpenGL® 1.5 APIs, programmers can now develop shader programs utilizing these technologies and techniques"
Yes, OGL does. I linked you to an
OpenGL extension. I quoted this from Nvidia's site. Try as you might to ignore it, it won't go away. OGL can and will support other formats.
"Why is this a major factor? Because put simply
ati_fragment_program ... includes PS 1.1/1.4/2.0
nv30_ ... includes PS 1.0/1.1/1.2/1.3/2.0/2.x"
I don't understand what you are getting at here. Doesn't this support my point that OGL supports these shader models? I mean, you just said as much here that these OGL extensions support those models.
"Now why is interesting?
Because under DirectX both NVIDIA FX-Series and Radeon 9-Series BOTH support the others specific shader versions!
What is even more interesting is that DirectX8.0 (8.1 for 2.x) supported these features way back in 2000 when it wasn't until OpenGL 1.4 when anything other than PS 1.3 & 1.4 were supported via these cards."
A few points on this twisted paragraph.
1. Dx 8.1 didn't support 2.x(and here I can safely assume you mean both VS and PS versions). That's pure fantasy. The only new versions that DX 8.1 added to the shader models is PS 1.2, 1.3, 1.4. This also extends obviously to DX 8.0 which came before it. It only supported VS 1.0 and PS 1.0 theoretically. At the time these were more a demo version of shaders and only supported through software emulation(which made them dog slow). They were meant to be test versions that developers would use to prepare for the future. The real versions came in DX 8.1 as hardware support(in the form of the Geforce 3) appeared.
Quote: "New Features in DirectX Graphics
Expanded pixel shader functionality with new version 1.2, 1.3, and 1.4. "
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/dx81_c/directx_cpp/intro/dx8whatsnew.asp
2. You are really confusing here when you say:
Quote: "Now why is interesting?
Because under DirectX both NVIDIA FX-Series and Radeon 9-Series BOTH support the others specific shader versions!"
What are you talking about? What other versions? How does this relate to the discussion we're having? You need to stop to take a breather Raven cause your hysterics are making you hard to decypher.
"Not ALL ATI cards support 1.3, Not ALL NVIDIA cards support 1.4 however the current versions DO!"
I never said that all ATI cards support 1.3. In fact, IIRC there are some laptop cards from them that only support PS 1.4 and VS 1.1 or at least that is what I heard.
I also elucidated on my points as to why I currently believe that Nvidia doesn't support 1.4. So I'll ignore this point for now.
"The Cg Compiler is Open-Source, why add support for cards/extensions you don't have to?"
I never said them not adding support for other cards was a bad thing, at least from a business standpoint. The source for the Cg compiler, which I have had on my comp for some time, only contains code for a generic profile. There are few optimizations implemented, if any, or at least that was the impression I got. In order for ATI to support PS 1.4 they would have to spend time and money developing and optimizing a compiler for a language that is primarily the creation of their chief rival.
Naturally, they aren't too inclined to waste time and money on such an endeavor and I think that was Nvidia's stratagy. They can claim compatiablity and an Open Source effort, but at the same time deny their rival the opportunity to exploit their custom shader model, thus wasting their efforts and money on it. Its a complicated chess game really and hinges around Cg becoming popular and widely used. If it becomes widely popular the PS 1.4 format may well fade to obscurity which would be a blow to the nads for ATI as they have invested quite heavily into it.
"If ATI wish to release a Cg Compiler update to support 1.4 they can, but considering 1.3 is only in there because of the X-Box and 2.0 runs faster on all cards that support both who cares?"
This "who cares" mentality is exactly what leads me to believe that Nvidia wouldn't support PS 1.4. Why support it when, as you said, 2.0 runs faster and is more feature laden?
"Yes it would... IF they were using DirectX 9.0b, which like I said before DirectX does not CURRENTLY support 3.0!"
The kind of stubborn stupidity needed to think of that sentence as coherent is beyond me. Dx 9 supports 3.0. Nvidia said it themselves. Your wrong. Get over it.
"Oh, you mean OpenGL 1.5 which i believe a year ago everyone was telling me didn't exist, that OpenGL 2.0 was the next version AND the OpenGL Speicification that NVIDIA themselves have single handedly developed?"
I was wondering when you were going to bring this up. Time for the real fun to begin.
First a little background for the folks not in the know.
The claims that he is referring to originate here:
http://darkbasicpro.thegamecreators.com/?m=forum_view&t=8191&b=1
The date is April 1st, 2003. This is important and I'll be getting back to this little tidbit later.
The claim in question is here:
Quote: "OpenGL 1.3 -> all the updates in it are for nVidia cards written by nVidia
OpenGL 1.4 -> enhanced updates by nVidia for the new GeForce3/4 enhancements
OpenGL 1.5 -> purely for the FX generation and still in Beta"
Among some of his more outrageous claims like OpenGL updates being sole by Nvidia for Nvidia he claimed that OGL 1.5 was in beta and "purely for the FX generation". I've dealt with the OGL for nvidia only claims in that thread very throughly so I'll cut to the more revelevant part of the exisitance of OGL 1.5.
OpenGL is governed by the ARB, Architecture Review Board.
Quote: "The OpenGL Architecture Review Board (ARB), an independent consortium formed in 1992, governs the OpenGL specification."
http://www.opengl.org/about/arb/overview.html
They keep meticulous notes of their procedings and from these it is clear that the OpenGL revision in progress was originally called OpenGL 2.0 and had been in the works for quite some time.
Here is a quote from one of their meeting notes from March 5, 200
2:
Quote: "OpenGL 2.0 Status Update / SIGGRAPH Plans
Randi Rost presented a status update on 3Dlabs' work. Their proposed schedule has initial GL2 extensions by SIGGRAPH 2002, a full OpenGL 2.0 extension and spec at SIGGRAPH 2003."
OGL 2.0 had been in development for a long time. Over a year before we were even arguing.
It wasn't until June 10-11, 2003 that the next OpenGL was change from 2.0, to 1.5.
Quote: "OpenGL Shading Language and related extensions approved as ARB extensions, but not promoted to the core. Therefore the new core revision will be OpenGL 1.5, not 2.0."
This was determined by voting with a 5-4 vote in favor of promoting the OGL Shading Lang to the core. However, since just a majority, and not a super majority voted in favor of it, it was moved to the ARB extensions as a compromise instead.
Quote: "VOTE for immediate promotion of the OpenGL Shading Language and extensions to the core: 6 Yes / 1 Abstain / 4 No.
The result was a simple majority of non-abstaining YES votes, but not a supermajority. Interpretation of this vote required some care since final spec approval requires a supermajority vote, while consideration of features for the final spec requires only a simple majority. Because the NO votes were strongly held, we expect that trying to approval a core revision including the shading language would carry extremely high risk of failing to approve the spec. We will therefore not include the shading language into the core at this time, but instead drive a new core version as soon as there's more experience with the extensions, perhaps as soon as this fall.
As previously agreed in the marketing working group, we will call the new core revision OpenGL 1.5, reserving OpenGL 2.0 for a future core revision including the shading language."
Source:
http://www.opengl.org/about/arb/notes/meeting_note_2003-06-10.html#oglnext2
This all happened exactly TWO MONTHS AFTER Raven's argument with me. It was IMPOSSIBLE for him to know that OpenGL 1.5 would be the next revision as even the board members didn't know it would be until JUNE when they voted on it and we were arguing in APRIL. So unless Raven is psychic, he was dead wrong about the next revision being OGL 1.5 and I was right at the time.
"Add to this OpenGL 1.5 has only PUBLICALLY been released within the past month,"
Unless its August 2003 you are
way off the mark here.
Quote: "OpenGL version 1.5, released on July 29, 2003, is the fifth revision since the original version 1.0. "
http://www.opengl.org/documentation/opengl_current_version.html
" whereas DirectX 8.1 is the DirectX which introduced all of the current Shader Models (if only in writing in the help file!)"
Your kidding right? Please tell me your kidding.
"March 2004 - OpenGL 1.5 (nvidia developed)
August 2001 - DirectX 8.1 (microsoft & nvidia co-developed)"
July 2003 - OpenGL 1.5 (developed by the ARB)
Novemeber 2001 - DirectX 8.1(microsoft with the collobration of other gfx vendors)
Quote: "Saturday, November 10, 2001"
http://www.shacknews.com/onearticle.x/16979
"Yeah, i'm sure your original argument stands fast with that there; i mean i'm at a total loss to how the hell Microsoft could possible have had these specifications to models only recently released in OpenGL ... "
You and me too little buddy.
"i mean unless perhaps I WAS RIGHT in the fact that Shader Models are DirectX."
*shakes head in dismay*
You should really see a shrink about those dellusions of granduer of yours. They are getting out of control.
"This continues to the fact that both ATI and NVIDIA have had to personally support these extensions for 3-frikkin'-years, rather than them being ACTUAL specifications in OpenGL."
Err...so? Extensions are a part of OpenGL. If you bother to look at your own quote you can see for your self that the Cg compiler bases profiles around them.
Quote from YOU:
Quote: "Support for 14 profiles:
- vs_1_1 for DirectX 8 and DirectX 9
- vs_2_0 and vs_2_x for DirectX 9
- ps_1_1, ps_1_2 and ps_1_3 for DirectX 8 and DirectX 9
- ps_2_0 and ps_2_x for DirectX 9
- arbvp1 [OpenGL ARB_vertex_program]
- arbfp1 [OpenGL ARB_fragment_program]
- vp20, vp30 [NV_Vertex_program 1.0 and NV_Vertex_program 2.0]
- fp30 [NV30 OpenGL fragment programs]
- fp20 [NV_register_combiners and NV_Texture_shader)"
I bolded just two but as you can planly see they are referencing existing OGL extensions. Just because they are supported through extensions doesn't mean they aren't legitimate. OGL extensions are a part of OpenGL. They always have been and if you don't know that then I think that is really sad. Its basic info that anyone even remotely familar with OGL should know. I feel like I'm talking to a child.
"Shader Models are created for DirectX, Shader 4.0 was announced to be the MAJOR feature of DirectX10 ... DirectX9 introduced Shader 3.0, DirectX 8.1 introduced 2.0, DirectX 7.0 introduced Shader 1.0!!"
Just when I thought you couldn't possibly get more ignorant about shaders you open your mouth and prove me wrong.
First off, DX 9 introduced the new VS and PS 2.0 models. Not Dx 8.1.
Quote: "DirectX 9.0 introduces significant improvements across its suite of APIs. DirectSound offers new audio capabilities, DirectShow accelerates video rending hardware, and Direct3D enhances low-level graphics programmability with new programmable vertex and pixel shader 2.0 models."
http://www.microsoft.com/presspass/press/2003/Jan03/01-22DirectXHLSLPR.asp
DX 8.1 introduces PS 1.2, 1.3, and 1.4.
Quote: "Expanded pixel shader functionality with new version 1.2, 1.3, and 1.4."
Notice the distinct lack of a 2.0 in their? Thought so.
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/dx81_c/directx_cpp/intro/dx8whatsnew.asp
DX 8.0 introduced the earilest shading models. NOT DX 7!
Quote: "Programmable vertex processing language
Enables you to write custom shaders for morphing and tweening animation, matrix palette skinning, user-defined lighting models, general environment mapping, procedural geometry, or any other developer-defined algorithm.
Programmable pixel processing language
Enables you to write custom hardware shaders for general texture combining expressions, per-pixel lighting (bump mapping), per-pixel environment mapping for photorealistic specular effects, or any other developer-defined algorithm."
Source: Under
What's New in DirectX Graphics
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/dx81_c/directx_cpp/htm/whatsnewindirectx80.asp
"The specifications might be supported by OpenGL, but they are neither native or even fully supported."
???
So first they are supported. Then they aren't. Then they are, but not fully? You aren't making any sense whatsoever. I mean, if you are going to lie and exagerate at least get your story straight.
"- vs_1_1 for DirectX 8 and DirectX 9
- vs_2_0 and vs_2_x for DirectX 9
- ps_1_1, ps_1_2 and ps_1_3 for DirectX 8 and DirectX 9
- ps_2_0 and ps_2_x for DirectX 9
THESE ARE THE MODELS, THIS IS WHERE THEY ARE INTRODUCED, THIS IS WHERE THEY COME FROM!
OpenGL 1.4 ONLY has support for Model 1.0 and Model 2.0"
A few points:
1. The only one who needs to pay attention to that quote is you. Notice how DX 8 isn't next to the vs_2_0, vs_2_x and their ps equivalants like Dx 9 is? Would you mind trying to explain who this fits in with the above quote:
Quote: "Shader Models are created for DirectX, Shader 4.0 was announced to be the MAJOR feature of DirectX10 ... DirectX9 introduced Shader 3.0, DirectX 8.1 introduced 2.0, DirectX 7.0 introduced Shader 1.0!!"
If what you said is true than why isn't Dx 8 next to vs and ps 2.0 in that little quote of yours hmmm?
2. With regards to:
Quote: "THESE ARE THE MODELS, THIS IS WHERE THEY ARE INTRODUCED, THIS IS WHERE THEY COME FROM!
OpenGL 1.4 ONLY has support for Model 1.0 and Model 2.0"
Then why did you say this?
Quote: "ati_fragment_program ... includes PS 1.1/1.4/2.0
nv30_ ... includes PS 1.0/1.1/1.2/1.3/2.0/2.x"
Your contradicting yourself again Raven. You should try harder to keep your lies straight.
But lets pay attention to your quote once again.
Quote: "arbvp1 [OpenGL ARB_vertex_program]
- arbfp1 [OpenGL ARB_fragment_program]
- vp20, vp30 [NV_Vertex_program 1.0 and NV_Vertex_program 2.0]
- fp30 [NV30 OpenGL fragment programs]
- fp20 [NV_register_combiners and NV_Texture_shader"
Notice the ARB_vertex_program in brackets? That's an extension. Something you said(or at least implied) is part of OpenGL yourself when you said:
Quote: "OpenGL 1.4 ONLY has support for Model 1.0 and Model 2.0"
This support comes through extensions which have always been apart of OpenGL. I've pointed out extensions before that support the DX models other than 1.0 and 2.0 and you said that ATI_fragment_program and nv30_ support the other models as well. Nvidia has also said that the upcoming 3.0 models will be accesible from OpenGL 1.5 themselves.
Quote: "Through the power of the Microsoft® DirectX® 9.0 Shader Model 3.0 and OpenGL® 1.5 APIs,"
http://www.nvidia.com/object/feature_cinefx3.0.html
As new features like shader models come along extensions are released to access them. Since there have been no extensions for 3.0 yet its reasonable to assume that such functionality doesn't exist in current hardware. The GeForceFX series doesn't have VS and PS 3.0 implemented in it secretly. Period. If it were in the hardware they'd add an extension like NV_vertex_program1_1 or NV_vertex_program2(those by the way, do exist. Check the extension link I gave you to nvidia's site).
"you know what is entirely tiring here is the fact that you obviously have never read the Shader Manuals provided by either ATI or NVIDIA on thier formats."
Rest assured, Raven, that the feeling is entirely mutual.