OpenGL 2.0 Released
berny@work writes "OpenGL has finally released version 2.0. The benefits include Programable Shaders, in particular: Shader Objects, Shader Programs, OpenGL Shading Language and changes to the Shader API. If you are interested take a look at the tutorials and the case studies that are linked to from the OpenGL site."
Lets hope that this will encourage more developers to switch to OpenGL. Yeah, I know the argument abt Direct3D being better (and I agree with it) but the new ver of OpenGL might just be good enough and arent the game developers always on the lookout for ways to get the massive linux gamers market
Can OpenGL ever match DX in popularity among developers?
One word: portability
Game developers? Probably not any time soon. Developers of visualisation applications and the such? No-one seriously uses Direct3D for that.
Obviously DirectX has such things as DirectSound which don't really have alternatives under Windows, though.
That's not even close to being a good comparison. Cg is a vendor-proprietory language not a cross-vendor language. You don't see Cg for ATI cards, no do you? DirectX is a platform-specific API, not a cross-platform API. On top of that, it's optimized for gaming, not professional applications. In any case, GLSL came out last year, so at worst, you can say that OpenGL was a year behind Direct3D in getting a high-level shading language.
Personally, I've used both D3D and OpenGL, and find D3D to be a horribly designed API, with massive changes in each revision. I'd much rather get OpenGL a year later, but designed right, than the D3D hack of the day.
A deep unwavering belief is a sure sign you're missing something...
Are you kidding?
Come on, thats no argument. There is NO linux gamers market worth mentioning, and there is NO massive linux market in the first place.
A better argument:
OpenGL is a long standing industry standard which give developers more control over the way stuff gets rendered. Its simple, straightforward and does not depend on a large, antropophagic competitor, platform owner like Microsoft.
And THATS why ID uses it. So the MS wont choke them by controlling that critical part of the API.
Not many developers have the muscle ID has to invest in remaking a lot of stuff DX already provides, but for some sizes, its worth it.
NO SIG
Hardware tends not to be very object oriented and C++ can quite happily call C.
While I agree OO has advantages in some situations with a low level graphics API I don't think that's the case the only real omission in OpenGL caused by the C interface is function overloading for the various argument types to a few functions. That would clean up a few things.
In 3D graphics OO really kicks into it's own when it comes to higher level APIs like scene graphs and there are numerous examples. These can and do benefit greatly from OO design but nobody has come up with a compelling low level hardware interface that justified OO. Sure you could wrap a few things in a class or two but there's no compelling architectural justification and attepmts to wrap OpenGL in a trivial namespace class and call it OO are horribly naive and misguided.
Heh, spoken like someone who has never written a line of graphics code in their life. If you read Carmack's original OpenGL .plan you'll see that he was talking about how much cleaner OpenGL was to call.
You don't cite a reference w.r.t OpenGL & Carmack, it is clearly FUD. The only dissatisfaction I've seen from Carmack was in the Cg vs glslang hardware abstraction, I won't explain it, it's too technical for you but basically Carmack was advocating the futureproof open aproach and in some respects he got his way, however Doom3 calls ARBfp and ARBvp shaders anyway.
Carmack has never waivered from his OpenGL support and the only issue he's taken a public stand on in the API was as I said, shaders where he expressed a dislike for Cg and Cg is very similar to HLSL in D3D so Carmack was taking a stand against a shader approach that is used in D3D.
OpenGL has been around longer than D3D, is a lot cleaner in design, it has a clear unambiguius specification and has conformance tests to ensure quality of implementation. OpenGL is also portable to non-Windows platforms. All of these are excellent reasons to use OpenGl that have nothing to do with being non-Microsoft.
3D graphics is something that no sane developer would ever lock himself to a proprietary API like Direct3D. More and more companies use OpenGL for their games, and now with 2.0 even more will ever use it. Using OpenGL has the additional benefit of porting a game to architectures other than Windows. As for other parts of DirectX, there are various combinations that can do the job: OpenGL + SDL, OpenGL + AllegroGL + Allegro, etc.